讀古今文學網 > 別怕,ExcelVBA其實很簡單 > 練習小課堂 >

練習小課堂

在表6-2中,你知道Type的參數值為什麼是0、1、2、4、8……這樣有間隔而不是連續的自然數嗎?

參考答案

因為中間空開的數值(如3)可以是多種參數值之和(如1+2),為了不混淆,所以參數值是有間隔而不是連續的自然數。

6.3.3 MsgBox 函數

使用MsgBox函數,可以創建一個對話框,告訴用戶某些信息,並等待用戶單擊其中某個按鈕後繼續運行。

其效果如圖6-21所示。

圖6-21 MsgBox函數創建的對話框

設置顯示的按鈕

MsgBox函數一共有6種按鈕設定,如表6-3和圖6-22所示。

表6-3Msgbox的6種按鈕設定

常數值說明vbOkonly0只顯示【確定】按鈕vbOkCancel1顯示【確定】和【取消】兩個按鈕vbAbortRetryIgnore2顯示【終止】、【重試】和【忽略】3個按鈕vbYesNoCancel3顯示【是】、【否】和【取消】3個按鈕vbYesNo4顯示【是】和【否】兩個按鈕vbRetryCancel5顯示【重試】和【取消】兩個按鈕

圖6-22 Msgbox函數6種按鈕設定

設置顯示的圖標樣式

MsgBox函數一共有4種圖標樣式,如表6-4和圖6-23所示。

表6-4Msgbox的4種圖標樣式

常數值說明vbCritical16顯示「關鍵信息」圖標vbQuestion32顯示「警告詢問」圖標vbExclamation48顯示「警告消息」圖標vbInformation64顯示「通知消息」圖標

圖6-23 不同的圖標樣式

可以同時設置顯示的按鈕和圖標,在兩個常數或值之間用+號連接:

其效果如圖6-24所示。

圖6-24 設置按鈕及顯示圖標

設置缺省按鈕

默認情況下按回車鍵即可執行的按鈕稱為缺省按鈕,如圖6-25所示。

圖6-25 缺省按鈕

如果要修改第二個按鈕為缺省按鈕,可以設置Buttons參數的參數值。

其效果如圖6-26所示。

圖6-26 設置第2個按鈕為缺省按鈕

如果想設置第三個、第四個按鈕為缺省按鈕,相應的參數如表6-5所示。

表6-5 設置缺省按鈕的參數

常數值說明vbDefaultButton10第一個按鈕為缺省按鈕vbDefaultButton2256第二個按鈕為缺省按鈕vbDefaultButton3512第三個按鈕為缺省按鈕vbDefaultButton4768第四個按鈕為缺省按鈕

指定對話框類型

Buttons參數還有第四組設定值,用來決定對框的類型,如表6-6所示。

表6-6 對話框的類型

常數值說明vbApplicationModal0應用程序強制返回;暫停執行應用程序,直到用戶對消息框作出響應才繼續工作vbSystemModal4096系統強制返回;暫停執行所有程序,直到用戶對消息框作出響應才工作

MsgBox函數的返回值

設置Buttons參數可以讓對話框顯示不同的按鈕,單擊不同的按鈕,將返回不同的值,如表6-7所示,程序可以根據返回值選擇不同的操作,如:

表6-7MsgBox函數的返回值

常數值描述vbOK1單擊【確定】按鈕 vbCancel2單擊【取消】按鈕vbAbort3單擊【終止】按鈕vbRetry4單擊【重試】按鈕vbIgnore5單擊【忽略】按鈕vbYes6單擊【是】按鈕vbNo7單擊【否】按鈕

6.3.4 Application 對象的 FindFile 方法

使用Application對象的FindFile方法可以顯示【打開】對話框,用戶可以在對話框中選擇並打開文件,如圖6-27所示。

圖6-27 用FindFile方法打開文件

6.3.5 Application 對象的 GetOpenFilename 方法

可以調用Application對象的GetOpenFilename方法顯示【打開】對話框,在對話框裡選擇文件,獲得文件名稱。

雖然同是顯示【打開】對話框,但GetOpenFilename方法並不會打開選中的文件,而是返回所選文件的文件名(含路徑)字符串,如圖6-28所示。

圖6-28 不使用參數時

可以使用FileFilter參數限制可選擇的文件類型,如圖6-29所示。

圖6-29 使用參數限制文件類型

如果希望能在兩種或多種類型的文件中選擇,可以修改參數值,如圖6-30所示。

圖6-30 使用參數限制文件類型

也可以增加文件類型下拉列表中的項目,如圖6-31所示。

圖6-31 增加文件類型下拉列表中的項目

除了 filefilter, GetOpemFilename方法還有其他參數,如圖6-32所示。

圖6-32 當設置更多參數時

6.3.6 Application 對象的 GetSaveAsFilename 方法

可以調用Application對象的GetSaveAsFilename方法打開【另存為】對話框,在對話框裡選擇文件,獲得文件名,如圖6-33所示。

圖6-33 用GetSaveAsFilename方法獲取文件名

6.3.7 Application對象的FileDialog屬性

使用Application對象的FileDialog屬性可以獲得指定目錄的路徑及名稱,如圖6-34所示。

圖6-34 獲取目錄名稱

除了msoFileDialogFolderPicker,filedialogtype參數還可以選用其他的值,如表6-8所示。

表6-8 msoFileDialogType常量列表

常量說明msoFileDialogFilePicker允許選擇一個文件msoFileDialogFolderPicker允許選擇一個文件夾msoFileDialogOpen允許打開一個文件msoFileDialogSaveAs允許保存一個文件