vbmsgbox引用变量_vba中MsgBox的参数及用法
1、作用
在消息框中顯示信息,并等待用戶單擊按鈕,可返回單擊的按鈕值(比如“確定”或者“取消”)。通常用作顯示變量值的一種方式。
2、語法
MsgBox(Prompt[,Buttons][,Title][,Helpfile,Context])
參數(shù)說明:
(1)Prompt,必需的參數(shù),為字符串,作為顯示在消息框中的消息文本。其最大長度約為1024個字符,由所用字符的寬度決定。如果prompt的內(nèi)容超過一行,則可以在每一行之間用回車符(Chr(13))、換行符(Chr(10))或是回車與換行符的組合(Chr(13)&Chr(10))將各行分隔開來。
(2)Buttons,可選的參數(shù),為數(shù)值表達式的值之和,指定顯示的按鈕的數(shù)目及形式、使用的圖標樣式、缺省按鈕及消息框的強制回應(yīng)等,可以此定制消息框。若省略該參數(shù),則其缺省值為0。設(shè)置值見下表。
(3)Title,可選的參數(shù),表示在消息框的標題欄中所顯示的文本。若省略該參數(shù),則將應(yīng)用程序名放在標題欄中。
(4)Helpfile,可選的參數(shù),為字符串表達式,提供幫助文件。若有Helpfile,則必須有Context。
(5)Context,可選的參數(shù),為數(shù)值表達式,提供幫助主題。若有Context,則必須有Helpfile。
3、Button參數(shù)
用于MsgBox函數(shù)中Button參數(shù)的常量
符號常量
值
作用
按鈕類型
vbokonly
0
只顯示“確定”按鈕
vbokcancel
1
顯示“確定”及“取消”按鈕
vbabortretryignore
2
顯示“終止”、“重試”及“忽略”按鈕
vbyesnocancel
3
顯示“是”、“否”及“取消”按鈕
vbyesno
4
顯示“是”、“否”按鈕
vbretrycancel
5
顯示“重試”及“取消”按鈕
圖標樣式
vbcritical
16
顯示critical message圖標(系統(tǒng)叉號圖標)
vbquestion
32
顯示warning query圖標(系統(tǒng)問號圖標)
vbexclamation
48
顯示warning message圖標(系統(tǒng)感嘆號圖標)
vbinformation
64
顯示information message圖標(系統(tǒng)信息圖標)
默認按鈕
vbdefauitbutton1
0
第一個按鈕是默認值
vbdefauitbutton2
256
第二個按鈕是默認值
vbdefauitbutton3
512
第三個按鈕是默認值
vbdefauitbutton4
768
第四個按鈕是默認值
強制返回
vbapplicationmode1
0
應(yīng)用程序強制返回
vbsystemmode1
4096
系統(tǒng)強制返回
其他類型
vbmsgboxhelpbutton
16384
在對話框中添加一個“幫助”按鈕
vbmsgboxsetforeground
65535
指定對話框窗口作為前景窗口
vbmsgboxright
524288
對話框的文本為右對齊
vbmsgboxrtireading
1048576
指定對話框中的元素從右到左顯示
說明:
(1)第一組值(0–5)描述了消息框中顯示的按鈕的類型與數(shù)目;第二組值(16,32,48,64)描述了圖標的樣式;第三組值(0,256,512,768)說明哪一個按鈕是缺省值;而第四組值(0,4096)則決定消息框的強制返回性。將這些數(shù)字相加以生成Buttons參數(shù)值的時候,只能由每組值取用一個數(shù)字。
(2)這些常數(shù)都是VBA指定的,可以在程序代碼中使用這些常數(shù)名稱代替實際數(shù)值。
4、返回值
用于MsgBox函數(shù)返回值的常量
常數(shù)
值
說明
vbOK
1
確定
vbCancel
2
取消
vbAbort
3
終止
vbRetry
4
重試
vbIgnore
5
忽略
vbYes
6
是
vbNo
7
否
5、相關(guān)說明
(1)?如果同時提供了Helpfile與Context參數(shù),可以按F1鍵來查看與Context相應(yīng)的幫助主題,Excel通常會在輸入框中自動添加一個幫助(Help)按鈕。
(2)若在消息框中顯示“取消”按鈕,則按下ESC鍵與單擊“取消”按鈕效果相同。若消息框中有“幫助”按鈕,則提供相關(guān)的幫助信息。
(3)如果要輸入多個參數(shù)并省略中間的某些參數(shù),則必須在相應(yīng)位置加入逗號分界符。
6、示例
(1)使用?MsgBox?函數(shù),在具有“是”及“否”按鈕的對話框中顯示一條嚴重錯誤信息。示例中的缺省按鈕為“否”,MsgBox函數(shù)的返回值視用戶按哪一個鈕而定。并假設(shè)DEMO.HLP為一幫助文件,其中有一個幫助主題代碼為1000。
Dim?Msg,Style,Title,Help,Ctxt,Response,MyString
'定義消息文本
Msg="Do?you?want?to?continue??"
'?定義按鈕
Style?=?vbYesNo?+?vbCritical?+?vbDefaultButton2
'?定義標題文本
Title?=?"MsgBox?Demonstration"
'?定義幫助文件
Help?=?"DEMO.HLP"
'?定義幫助主題
Ctxt?=?1000
Response?=?MsgBox(Msg,?Style,?Title,?Help,?Ctxt)
If?Response?=?vbYes?Then????'?用戶按下“是”
MyString?=?"Yes"
Else????'?用戶按下“否”
MyString?=?"No"
End?If
(2)只顯示某消息
MsgBox?“Hello!”
(3)將消息框返回的結(jié)果賦值給變量
Ans=MsgBox(“Continue?”,vbYesNo)
If?MsgBox(“Continue?”,vbYesNo)<>vbYes?Then?Exit?Sub
(4)使用常量的組合,賦值組Config變量,并設(shè)置第二個按鈕為缺省按鈕
Config=vbYesNo+vbQuestion+vbDefaultButton2
(5)若要在消息中強制換行,可在文本中使用vbCrLf(或vbNewLine)常量,用&加空格與字符隔開。如
MsgBox?“This?is?the?first?line.”?&?vbNewLine?&?“Second?line.”
(6)可以在消息框中使用vbTab常量插入一個制表符。下面的過程使用一個消息框來顯示5×5單元格區(qū)域中的所有值,用vbTab常量分隔列并使用vbCrLf常量插入一個新行。注意在MsgBox函數(shù)最多只顯示1024個字符,因此限制了可顯示的單元格數(shù)。
Option?Explicit
Sub?ShowRangeValue()
Dim?Msg?As?String
Dim?r?As?Integer,?c?As?Integer
Msg?=?""
For?r?=?1?To?5
For?c?=?1?To?5
Msg?=?Msg?&?Cells(r,?c)?&?vbTab
Next?c
Msg?=?Msg?&?vbCrLf
Next?r
MsgBox?Msg
End?Sub
(7)在消息框語句中運用工作表函數(shù)以及設(shè)置顯示的數(shù)置格式,如下面語句所示:
MsgBox?"?selection?has?"?&?m?&?"?cells?."?&?Chr(13)?&?"?the?sum?is?:"?&?Application.WorksheetFunction.Sum(Selection)?&?Chr(13)?&?"the?average?is?:"?&?Format(Application.WorksheetFunction.Average(Selection),?"#,##0.00"),?vbInformation,?"selection?count?&?sum?&?average"?&?Chr(13)
出處:http://blog.csdn.net/bright_chen7/article/details/6248715
參考:https://www.baidu.com/link?url=lRwVSdVDBPcm5ww-CkxqlyM4ColOU1VodWiHGsA-LgQnmYahXESn7nydeZmAo9rz&wd=&eqid=c33f9e7100001a8b00000004584f93a7
總結(jié)
以上是生活随笔為你收集整理的vbmsgbox引用变量_vba中MsgBox的参数及用法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java多线程的实现方式_Java 多线
- 下一篇: java拳皇地下城_拳皇(Java简单的