全民一起VBA实战篇 专题4 第二回 文件框对象一身多形,属性化操作更加直观

 

相关知识点:

Application.FileDialog 窗体编程相似,此对象代表一个文件对话框,可以是打开、保存等多种形式

       FileDialog(1) 代表文件打开对话框,即msoFileDialogOpen,直接调用Execute方法,直接执行打开

       FileDialog(2) 代表文件保存对话框,即msoFileDialogSaveAs,直接调用Execute方法,直接执行保存

       FileDialog(3) 代表文件浏览对话框,即msoFileDialogFilePicker

       FileDialog(4) 代表文件夹浏览对话框,即msoFileDialogFolderPicker,不支持多项选择

FileDialog.Filters 代表文件对话框中“文件类型过滤器”

       Filters.Add  添加一个文件类型

       Filters.Clear 清除目前已有的所有文件类型过滤(即不显示所有文件)

.show 返回值是0,用户点击了“取消”,返回值为-1,则点击了“打开”等功能按钮

FileDialog.SelectedItems(n)  用户在文件对话框中选中的第n文件(文件夹)名字。

例1 文件对话框的各种类型,选中一个文件

Sub fileDialogdemo()

       Dim fd as FileDialog

       Set fd=application.FileDialog(msoFileDialogFilePicker)

       Fd.title=”打开报表文件”           ‘打开对话框标题

       Fd.initialfilename=”d:\vbademeo\”   ‘打开指定文件夹(直接定位)

       Fd.filters.Clear                    ‘先清理掉默认过滤器内容,用户指定过滤器

       Fd.filters.Add ”execl文件”,”*.xlsx;*.xlsm”

Fd.filters.Add ”文本文件”,”*.txt”

Fd.filterIndex=2                   ‘过滤器指定默认文件类型“文本文件”

       ‘Fd.show                          ‘显示文件框

       If fd.show=-1 Then

              MsgBox fd.SelectedItems(1)       ‘用户选中了第一个文件名

       End If

End Sub

例2 文件对话框的各种类型,选中多个个文件

Sub fileDialogdemo2()

       Dim fd as FileDialog

       Set fd=application.FileDialog(msoFileDialogFilePicker)

       Fd.title=”打开报表文件”           ‘打开对话框标题

       Fd.AllowMultiSelect=Ture          ‘ 可以多项选择为True,默认为False

       Fd.initialfilename=”d:\vbademeo\”   ‘打开指定文件夹(直接定位)

       Fd.filters.Clear                    ‘先清理掉默认过滤器内容,用户指定过滤器

       Fd.filters.Add ”execl文件”,”*.xlsx;*.xlsm”

Fd.filters.Add ”文本文件”,”*.txt”

Fd.filterIndex=2                   ‘过滤器指定默认文件类型“文本文件”

       ‘Fd.show                          ‘显示文件框

       If fd.show=-1 Then

              For i=1 To fd.SelectedItems.Count

                     MsgBox fd.SelectedItems(i)       ‘从第1个遍历到最后一个文件名

              Next i

       End If

End Sub

例3 文件对话框的各种类型,直接打开文件

Sub fileDialogdemo3()

       Dim fd as FileDialog

       Set fd=application.FileDialog(msoFileDialogOpen)

       Fd.title=”打开报表文件”           ‘打开对话框标题

       Fd.AllowMultiSelect=Ture          ‘ 可以多项选择为True,默认为False

       Fd.initialfilename=”d:\vbademeo\”   ‘打开指定文件夹(直接定位)

       Fd.filters.Clear                    ‘先清理掉默认过滤器内容,用户指定过滤器

       Fd.filters.Add ”execl文件”,”*.xlsx;*.xlsm”

Fd.filters.Add ”文本文件”,”*.txt”

Fd.filterIndex=2                   ‘过滤器指定默认文件类型“文本文件”

       ‘Fd.show                          ‘显示文件框

       If fd.show=-1 Then

              Fd.Execute    ‘在execl只能直接打开execl文件,却不能打开word文件,在word里同样

       End If

End Sub

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值