【vba】msgbox无法显示vba变量类型,为什么输出的不是a而是0?

vba操作Excel之MsgBox函数实例介绍
浏览:2479次
  接上篇  二、MsgBox举例  ①使用 MsgBox 函数,在具有“是”及“否”按钮的对话框中显示一条严重错误信息。  示例中的缺省按钮为“否”,MsgBox函数的返回值视用户按哪一个钮而定。并假设DEMO.HLP为一帮助文件,其中有一个帮助主题代码为1000。  Dim Msg,Style,Title,Help,Ctxt,Response,MyString  Msg="Do you want to continue ?"
#8217;定义消息文本  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  ②只显示某消息  MsgBox “Hello!”   ③将消息框返回的结果赋值给变量  Ans=MsgBox(“Continue?”,vbYesNo)  If MsgBox(“Continue?”,vbYesNo)vbYes Then Exit Sub  ④使用常量的组合,赋值组Config变量,并设置第二个按钮为缺省按钮  Config=vbYesNo vbQuestion vbDefaultButton2  ⑤若要在消息中强制换行,可在文本中使用vbCrLf(或vbNewLine)常量,用加空格与字符隔开。如  MsgBox “This is the first line.”
“Second line.”  ⑥可以在消息框中使用vbTab常量插入一个制表符。下面的过程使用一个消息框来显示5#215;5单元格区域中的所有值,用vbTab常量分隔列并使用vbCrLf常量插入一个新行。注意在MsgBox函数最多只显示1024个字符,因此限制了可显示的单元格数。  Option Explicit  Sub ShowRangeva lue()  Dim Msg As String  Dim r As Integer, c As Integer  Msg = ""  For r = 1 To 5  
For c = 1 To 5  
Cells(r, c)
Next c  
vbCrLf  Next r  MsgBox Msg  End Sub  ⑦在消息框语句中运用工作表函数以及设置显示的数置格式,如下面语句所示:  MsgBox " selection has "
" cells ."
" the sum is :"
Application.WorksheetFunction.Sum(Selection)
"the average is :"
Format(Application.WorksheetFunction.Average(Selection), "#,##0.00"), vbInformation, "selection count
vba操作Excel之MsgBox函数实例介绍 的发表时间是: 18:43:13&来源:
爱盲网提供盲人无障碍浏览《vba操作Excel之MsgBox函数实例介绍 》,感谢作者:撰稿!
<div class="number" id="DiggNum_VBA的Msgbox使用方法
最近在不断完善Excel GTD,遇到一些小问题,google一下马上就有答案,查到的东西,顺便收藏一下吧!
MsgBox函数
MsgBox函数的作用是弹出一个对话框,在其中显示的指定的数据和提示信息。此外,该函数还可以将返回用户在此对话框做的选择,并将返回值赋给指定变量。
其语法格式为:变量=MsgBox(信息内容,对话框类型+图标类型,对话框题目)
对话框类型和图标类型为非必传参数.
button参数的取值
VbOkCancel
确定和取消按钮
VbAortRetryIgnore
终止,重试和忽略按钮
VbYesNoCancel
是,否和取消按钮
重试和取消按钮
Vbretrycancel
重试和取消图标
VbCritical
VbQuestion
问号(?)图标
VbExclamation
感叹号(!)图标
VbInformation
VbDefaultButton1
默认按钮为第一按钮
VbDefaultButton2
默认按钮为第二按钮
VbDefaultButton3
默认按钮为第三按钮
MsgBox()的返回值
例子代码如下:
a = MsgBox ("请确认您输入的数据是否正确!" , 3+48+0 , "数据检查"
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。查看: 831|回复: 9
关于msgbox输出0.几的小数
阅读权限20
在线时间 小时
msgbox输出(-1,1)区间的小数时,不输出“0”。为什么?
谢谢大伙的赐教!
阅读权限10
在线时间 小时
加个Format()就有了!
QQ图片20.png (19.4 KB, 下载次数: 0)
11:21 上传
阅读权限50
在线时间 小时
这是电脑本机的格式设置问题。
在控制面板的区域和语言设置对话框中,点击【自定义格式】按钮出现对话框,
其中有小数是否显示【前导0】的设置选项。默认不显示,即 0.7 显示为 .7
如果勾选为 0.7 ,则以后运行VBA代码就不会出现你说的问题了。
如果想要在VBA代码过程中解决此问题,而无需每次打开控制面板确认,那么代码如下:
With CreateObject(&Wscript.Shell&)
& && &&&Call .RegWrite(&HKEY_CURRENT_USER\Control Panel\International\iLZero&, &1&)
& && && &'设置小数点前导0显示即 [0.7]格式
如果宏运行完毕后,想要恢复原状,那么:
With CreateObject(&Wscript.Shell&)
& && &&&Call .RegWrite(&HKEY_CURRENT_USER\Control Panel\International\iLZero&, &0&)
& && &&&'恢复到默认 小数点前导0不显示 [.7]状态
如果需要显示小数的小数位数可以确定,那么也可以这么来:
使用FormatNumber(t, 2, 0)函数:
&&t = 7 / 10
&&Msgbox FormatNumber(t, 2, -1)
或&&MsgBox FormatNumber(t, 2, vbTrue)
简单解释,该函数有3个参数:
FormatNumber([小数数值], [小数位数], [显示模式])
第3参数=0或 vbFalse时,不显示【前导0】
第3参数=-1或 vbTrue时,显示【前导0】
还有一个简单的笨办法:
检测得到的小数结果,首位是否为小数点【.】
如果是小数点【.】则前面加&0&后返回。
Sub test()
& & t = 7 / 10
& & If Left(t, 1) = &.& Then t = &0& & t
& & MsgBox t
呵呵,这样做有点粗暴!
分享香川老师的回答
阅读权限30
在线时间 小时
Rnd 随机的范围是0-1,不包括0和1,只可能无限的接近0,不会产生0.
===貌似看错题了!!!
阅读权限95
在线时间 小时
& & & & & & & &
这是电脑本机的格式设置问题。
在控制面板的区域和语言设置对话框中,点击【自定义格式】按钮出现对话框 ...
呵呵,谢谢复制、粘贴!
这个问题老是出现……
阅读权限50
在线时间 小时
呵呵,谢谢复制、粘贴!
这个问题老是出现……
我何止是复制粘贴。对于香川老师的经典语录,我都收藏了。有一个专门的文件夹,每天晚上看一看
阅读权限95
在线时间 小时
Rnd 随机的范围是0-1,不包括0和1,只可能无限的接近0,不会产生0.
不是说包括0吗?
阅读权限20
在线时间 小时
感谢3楼。我认为是正解。
阅读权限20
在线时间 小时
看了您的解决方案,还想问一下:VBS好像您好会。我想请教一下,如果想学VBS,买什么教材好?
阅读权限50
在线时间 小时
看了您的解决方案,还想问一下:VBS好像您好会。我想请教一下,如果想学VBS,买什么教材好?
我不懂VBS,只会VBA哦。我没买过任何教材。所以是传说中的野路子,实践出真知。开始的时候拼命看视频,没日没夜的,然后就拼命写代码,慢慢积累的
最新热点 /1
ExcelHome每周都有线上直播公开课,
国内一流讲师真身分享,高手贴身答疑,
赶不上直播还能看录像,
关键居然是免费的!
厚木哥们都已经这么努力了,
你还好意思说学不好Office。
玩命加载中,请稍候
玩命加载中,请稍候
Powered by
本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任! & & 本站特聘法律顾问:徐怀玉律师 李志群律师Windows10用户联盟QQ群:
变量是用来存放可以在脚本执行过程中改变的值命名的存储位置。下面是命名变量的基本规则。下面所列的是用于命名一个变量的规则。
必须使用一个字母作为第一个字符。
不能使用空格,句号(.),感叹号(!),或字符@, &, $, #在变量名称中。
名称不能超过255个字符。
不能使用Visual Basic保留关键字作为变量名。
在VBA中,我们需要在使用之前声明变量。
Dim &&variable_name&& As &&variable_type&&
有许多的VBA的数据类型,它可以非常分为两大类,即数字和非数字数据类型。
数字数据类型
下表显示的数值数据类型和值的允许范围。
-32,768 - 32,767
-2,147,483,648 - 2,147,483,648
-3. ~ -1. 为负值
1. ~&&3. 为正值
-1.32e+308 ~ -4.47E-324&为负值
4.47E-324 ~ 1.32e+308&为正值
-922,337,203,685,477.5808 to 922,337,203,685,477.5807
+/- 79,228,162,514,264,337,593,543,950,335 if no decimal is use&
+/- 7.0335 (28 decimal places).
非数字数据类型
下表显示了非数值数据类型和值的允许范围。
String(fixed length)
1 ~ 65,400 字符
String(variable length)
0 ~ 2 十亿个字符
1月 1, 100 到12月 31, 9999
True 或False
任何嵌入对象
Variant(numeric)
任何Double值一样大
Variant(text)
同为可变长度的字符串
我们创建一个按钮,并将其命名为&Variables_demo&用来演示使用变量。
Private Sub Variables_demo_Click()
Dim password As String
password = &Admin#1&
Dim num As Integer
num = 1234
Dim BirthDay As Date
BirthDay = 30 / 10 / 2020
MsgBox &Passowrd is & & password & Chr(10) & &Value of num is & & num & Chr(10) & &Value of Birthday is & & BirthDay
时执行该脚本,则输出将如下所示。
标签:&&&&&&&&&&&&

我要回帖

更多关于 vba变量类型 的文章

 

随机推荐