一、MsgBox与InputBox
1、二者均为vba.interaction函数,演示在vba里输入函数名时的参数;
2、Msgbox函数参数:Msgbox(提示文字,按钮类型,标题文字,帮助文件,帮助文件索引), 如:MsgBox "你好", 4 + 32, "打招呼对话框", "C:/a.chm", 0
3、Msgbox可以有返回值,如: i = MsgBox("你好", 4 + 32, "打招呼对话框", "C:/a.chm", 0)
4、vba.interaction.Inputbox函数参数:Inputbox(提示文字,标题文字,默认值,左边距,上边距,帮助文件,帮助文件索引),如:
Name = InputBox("请输入姓名", "登陆框", "此处输入", 100, 100, "C:/a.chm", 0),本函数对用户输入类型无限制,若与定义类型不同,会直接报错
5、application.Inputbox方法参数:Inputbox(提示文字,标题文字,默认值,左边距,上边距,帮助文件,帮助文件索引,输入类型),如:A = Application.InputBox
("输入金额", "汇率计算", "此处输入", 100, 100, "C:/a.chm", 0, 1) 。 本方法对用户输入类型有限制,不符的输入类型会提示修改。
二、application.GetOpenFilename方法:显示标准的“打开”对话框,并获取用户文件名,而不必真正打开任何文件。
用法: GetOpenFilename(文件类型,优先类型,对话框标题,按钮文字,是否支持多选),如:
A= Application.GetOpenFilename("新表,*.xlsx, 老表,*.xls", 1, "快选!", "确定", False)
文件类型:一个指定文件筛选条件的字符串。先指定文件类型名,再指定后缀,要成对出现。例如:"Excel文件,*.xlsx,老表,*.xls,所有文件,*.*"
优先类型:列出的各种文件类型,哪种优先显示。取值范围为 1 到本参数的值。如果省略本参数,或本参数的值大于可用筛选条件数,则使用第1个文件筛选条件。
注意事项:
(1)这个方法并不会真正打开文件,只是弹出对话框,并返回选定文件的包含路径在内的全文件名! 打开文件需增加代码:workbook.open str(见下面代码)
(2)用户点“取消”,则返回“False”;若用户选多个文件(最后一个参数需选true),则返回多个文件名,可赋值给数组;
'用户选定文件后,将文件名路径放入a1单元格 Range("a1") = Application.GetOpenFilename |
Dim arr() Dim wb As Workbook |
附录:
msgbox按钮类型:
msgbox返回值:
application.Inputbox输入类型:
常见对话框的调用:是真正地调用打开内置对话框
Application.Dialogs(xlDialogActivate或103).Show