VBA有inputbox函数和inputbox方法提供了简单的输入数据的方式。
1、inputbox函数
inputbox函数的返回值是一个字符串。
如果用户输入数据,得到的是一个字符串。
如果用户什么都没有输入(点击“确定”按钮),返回一个零长度的字符串。
如果用户点击“取消”按钮,返回的同样是一个零长度的字符串。
代码 a = InputBox(prompt:=''请输入数据'') ,输入数据:
返回一个字符串:
如果不输入输入数据和点击“取消”按钮,上述代码中 a 都是返回零长度的字符串。
VBA代码不能区分两者的区别。
2、inputbox方法
Application对象的inputbox方法相比inputbox函数更加灵活强大,它可以运行用户自己选择数据类型。Type参数后跟数字决定数据类型。
该代码使用鼠标选取单元格区域,单元格区域是对象。
如果点击“取消”按钮,则会返回False,Set语句就会出错,如下图:
所以,需要使用 On Error Resume Next 屏蔽错误。
然后再用Nothing来判断对象Rng是否赋值成功来确定是否选取了单元格区域。
小栗子:选取单元格区域,将数值小于500的设置红色背景。
参考代码: