ExcelVBA之InputBox函数

InputBox函数显示一个信息提示用户输入数据,这个对话框有两个按钮——“确定”和“取消”,当你点击确定时,InputBox函数返回用户输入在信息框里的信息;当你点击取消时,函数则返回空字符串(” ”)。InputBox函数的语法显示如下:

 

InputBox(prompt [, title] [, default] [, xpos] [, ypos] _ [, helpfile, context])

 

第一个参数,prompt,是你想要显示在对话框上的信息,你可以使用函数Chr(13)或Chr(10)将长文本打断为几行(参见本章中使用MsgBox函数的例子)。剩下所有的参数都是可选的。

 

第二个参数,title,让你改变对话框的默认标题,默认的标题是Mictosoft Excel。InputBox函数的第三个参数,default,让你在文本框里显示一个默认值,如果你忽略这个参数的话,显示的将是空白编辑框。

 

接下来的两个参数,xpos和ypos,允许你设置该对话框在屏幕上出现的位置,如果你忽略这两个参数,对话框就会出现了当前窗口的中央,xpos参数决定对话框在屏幕上从左起的水平位置,忽略它时,对话框显示在水平中央,而ypos参数决定对话框在屏幕从上而下的竖直位置,忽略它,对话框就在竖直大约三分之一的位置。xpos和ypos都使用一个叫twips的专门单位衡量,1twip大约等于0.0007英寸。最后两个参数,helpfile和context,和本专题ExcelVBA之的MsgBox函数相应的参数使用方法一样。

Sub AddTwoNums()
             Dim myPrompt As String
             Dim value1 As String
             Const myTitle = "Enter data"
             Dim mySum As Single
             myPrompt = "Enter a number:"
             value1 = InputBox(myPrompt, myTitle, 0)
             mySum = value1 + 2
             MsgBox mySum & " (" & value1 & " + 2)"
End Sub

 

value1 = InputBox(myPrompt, myTitle, 0)


变量value1的数据类型是字符串,你可以在上面指令的下面加上如下语句,快速地查看它的数据类型:
 

MsgBox varType(value1)

当VB运行上面的代码时,将显示信息-数字8,查看该数字代表字符串类型。

如果你试图在Excel的早期版本里(2000以前版本)运行AddTwoNums过程,当VB试图执行下列代码行时,你将得到类型不匹配的错误:


mysum = value1 + 2
使用内置函数CSng将储存于value1的字符串转换为一个单精度浮点类型的数字,可以避免类型不匹配错误,代码写成:

mysum = CSng(value1) + 2
下一行,mySum = value1 + 2,在用户输入的数据上加上2,并且将计算结果赋值给变量mySum。因为变量value1的数据类型时字符串,在使用它计算之前,VB在后台进行数据类型的转换,VB知道转换的需要。没有它,两种不兼容的数据类型(文本和数字)将会产生类型不匹配错误。程序最后是一个MsgBox函数,显示计算的结果已经给用户显示总数是如何组成的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值