一、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
'可增加open语句后直接打开文件 Dim str As String str = Application.GetOpenFilename Workbooks.Open str

'更常见的做法是:
Dim str As String
Dim wb As Workbook
str = Application.GetOpenFilename
("excel文件,*.xls*")
If str <> "False" Then '避免点取消时报错
'Set wb = Workbooks.Open(str)
End If
'这样既打开了文件,还能利用wb后续操作
Dim arr()

Dim wb As Workbook
Dim sht As Worksheet             '为想做的操作准备,可删
Set sht = ThisWorkbook.Sheets(1) '为想做的操作准备,可删
i = Application.GetOpenFilename("excel文件,*.xls*", 1, , , True)
j = TypeName(i)'判断用户选择的类型,若是false则typename为boolean,不能传给数组
If j <> "Boolean" Then
  arr = i '将打开文件的名称传给数组
  For k = LBound(arr) To UBound(arr)
    Set wb = Workbooks.Open(arr(k))
    '**做想做的操作,如:sht.Range("a" & k) = wb.Name**
    wb.Close
  Next
End If

  附录:

msgbox按钮类型:

  msgbox返回值:

 application.Inputbox输入类型:

 

 

 常见对话框的调用是真正地调用打开内置对话框
 Application.Dialogs(xlDialogActivate或103).Show