顯示訊息窗


在執行程式的過程中,我們希望在某些情況下提供提示,或者警告, 又或者是讓使用者選擇是否繼續執行程式時。 在Excel VBA中,Msgbox 便提供了這樣的功能。 當然不僅是使用者,當我們在程式除錯debug的時候,也是很有用呢。
 
以下就讓我們來試著在VBA中,透過Msgbox函數來使用顯示訊息窗的功能吧。


目錄

{tocify} $title={目錄} 

在撰寫程式的過程中,可以借助Msgbox函數顯示訊息窗,除了可以幫助我們除錯,也可以提供使用者一些提示。

關於Msgbox函數

顯示訊息窗的語法為
Point!

MsgBox (prompt, [ buttons, ] [ title, ] [ helpfile, context ])


引數 說明
prompt 表示訊息窗內的內容文字   必要
buttons 表示訊息窗內顯示的圖案按鈕
title 表示訊息窗的標題
helpfile, context 表示顯示出其他輔助檔案的引數


MsgBox的函數可以有回傳值,如果只是單純顯示訊息,不需要Msgbox函數的回傳值傳給變數時,可不使用()括號。


Msgbox函數的回傳值


MsgBox函數,在按下按鈕時,可以回傳回傳值
回傳值的內容如下,如果需要回傳值,要記得加上括號()

常數 描述
vbOK 1 確定
vbCancel 2 Cancel
vbAbort 3 中止
vbRetry 4 重試
vbIgnore 5 Ignore
vbYes 6
vbNo 7

範例

' 宣告變數returnMessage為整數型態
	Dim returnMessage As Integer
    
' 透過變數接回傳值
	returnMessage = MsgBox("該檔案真的要刪除嗎?", vbYesNo + vbQuestion, "檔案刪除確認")
    
' 確認returnMessage的變數值
	MsgBox returnMessage

' 如果按下按鈕的回傳值為vbYes , 則刪除檔案
	If returnMessage = vbYes Then
    	MsgBox "進行刪除xxx , 該檔案已刪除!"
	End If

    執行結果如下
                
                                                            回傳值為6
       



Msgbox函數範例


範例1.

單純顯示訊息窗,MsgBox函數不加括號()

MsgBox "處理完成"

  訊息窗顯示內容為處理完成

範例2.


MsgBox Range("A1").Value + 5

若想進一步了解相關內容可參考微軟的VBA
MsgBox 函式的說明

關於顯示訊息窗可參考以下連結影片


張貼留言 (0)
較新的 較舊