讀古今文學網 > 別怕,ExcelVBA其實很簡單 > 6.3 與用戶交互,簡單的輸入輸出對話框 >

6.3 與用戶交互,簡單的輸入輸出對話框

對話框是程序與用戶進行交互的工具,用來輸入或輸出信息。

6.3.1 InputBox 函數

InputBox函數創建一個接受用戶輸入的對話框,供用戶輸入數據。

運行程序後Excel會顯示一個對話框,如圖6-16所示。

圖6-16 運行程序後顯示的對話框

根據提示,在對話框中輸入姓名後單擊【確定】按鈕,輸入的姓名即可自動寫進活動工作表的A1單元格,如圖6-17所示。

圖6-17 利用對話框輸入姓名

編寫代碼時,所有的參數名稱都是可以省略的。

除了 prompt參數外,其實參數都可以省略。

也可以只省略其中的一個或幾個參數。

6.3.2 Application 對象的 InputBox 方法

使用Application對象的InputBox方法也可以創建接受用戶輸入的對話框。

除了 Left與Top參數,InputBox方法的其他參數與InputBox函數的參數的作用相同。

InputBox方法的Left和Top參數指定對話框在Excel工作表窗口中的位置,如圖6-18所示,而InputBox函數的xpos與ypos參數指定對話框在整個屏幕窗口中的位置,如圖6-15所示。

圖6-18 InputBox方法的Top與Left參數

既生InputBox函數,何生InputBox方法

對比一下它們的參數區別,可以知道二者的區別。

完整的參數,可以在VBA幫助裡看到,也可以在輸入代碼的時候,在代碼窗口裡看到,如圖6-19所示。

圖6-19 在代碼窗口中查看參數

InputBox函數只能返回一個String型的字符串,而InputBox方法返回的數據類型不確定,並且,InputBox方法比InputBox函數多一個Type參數。

Type參數有什麼作用

設置InputBox方法的Type參數值,指定返回的數據類型,如表6-2所示。

表6-2Type參數說明

參數值含義0公式1數字2文本(字符串)4邏輯值(True或False)8單元格引用(Range對像)16錯誤值,如#N/A64數值數組

下面的程序讓用戶選擇一個單元格區域,然後在單元格區域輸入數值100,如圖6-20所示。

圖6-20 使用InputBox方法

如果返回值為多種類型中的一種,就把Type參數的值設為相應類型的和。