Excel_VBA实现:弹出对话框进行打开另存(附FileDialog 属性)

excel_vba可实现弹窗进行人机交互,本案例实现弹窗选择需要打开的excel文件,选择文件后打开该文件,然后弹窗提示该文件另存为路径及目录,代码如下:

复制代码
Sub 打开文件对话框()
On Error Resume Next
With Application.FileDialog(msoFileDialogOpen)
    .Title = "请选择你要的文件"
    .AllowMultiSelect = True
    .InitialFileName = "C:\Users\Administrator\Desktop\"
    .Filters.Clear
    .Filters.Add "excel files", "*.xls,*.xlsx,*.dwg"
    If .Show = True Then
    Set gof = .SelectedItems
    .Execute
    Else: Exit Sub
    End If
End With
ActiveSheet.Cells(11, 5).Value = gof.Item(1)
MsgBox "另存为"
With Application.FileDialog(msoFileDialogSaveAs)
    .Title = "另存为"
    .AllowMultiSelect = True
    .InitialFileName = "C:\Users\Administrator\Desktop\"
   
    If .Show = True Then
    Set gof = .SelectedItems
    .Execute
    Else: Exit Sub
    End If
End With
'ActiveWorkbook.Close
End Sub

Application.FileDialog 属性 (Excel)

本文内容

  1. 语法
  2. 参数
  3. 备注
  4. 示例

返回一个 FileDialog 对象,它表示文件对话框的实例。

语法

expression .FileDialog (fileDialogType)

expression :表示 Application 对象的变量。

参数

展开表

名称 必需/可选 数据类型 说明
fileDialogType 必需 MsoFileDialogType 文件对话框的类型。

备注

MsoFileDialogType 可为下述常量之一:

  • msoFileDialogFilePicker。 允许用户选择文件。
  • msoFileDialogFolderPicker。 允许用户选择文件夹。
  • msoFileDialogOpen。 允许用户打开文件。
  • msoFileDialogSaveAs。 允许用户保存文件。

示例

在此示例中,Microsoft Excel 打开文件对话框,允许用户选择一个或多个文件。 选择这些文件后,Excel 会在单独的消息中显示每个文件的路径。

VB复制

复制代码
Sub UseFileDialogOpen() 
 
    Dim lngCount As Long 
 
    ' Open the file dialog 
    With Application.FileDialog(msoFileDialogOpen) 
        .AllowMultiSelect = True 
        .Show 
 
        ' Display paths of each file selected 
        For lngCount = 1 To .SelectedItems.Count 
            MsgBox .SelectedItems(lngCount) 
        Next lngCount 
 
    End With 
 
End Sub
相关推荐
IT_陈寒22 分钟前
JavaScript的闭包把我坑惨了,说好的内存会自动回收呢?
前端·人工智能·后端
Jackson__1 小时前
分享一个横向滚动案例,带悬停暂停,通用性很强
前端
MariaH2 小时前
git rebase的使用
前端
_柳青杨2 小时前
深入理解 JavaScript 事件循环
前端·javascript
阡陌Jony2 小时前
关于前端性能优化的一些问题:
前端
用户600071819103 小时前
【翻译】简化 TSRX
前端
IT乐手4 小时前
佛德角逼平西班牙,国足还有啥借口?
前端
JustHappy4 小时前
我汇总了身边朋友的经历才发现,其实第一份实习是最难找的......
前端·后端·面试
星栈4 小时前
Dioxus 的响应式系统:`Signal`、`Memo`、`Effect` 和异步状态到底该怎么分工
前端·前端框架
yingyima4 小时前
Java 正则表达式:比你想象的更强大
前端