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
相关推荐
Rubin932 分钟前
判断元素在可视区域?用于滚动加载,数据埋点等
前端
爱学习的茄子2 分钟前
AI驱动的单词学习应用:从图片识别到语音合成的完整实现
前端·深度学习·react.js
用户3802258598243 分钟前
使用three.js实现3D地球
前端·three.js
程序无bug5 分钟前
Spring 面向切面编程AOP 详细讲解
java·前端
zhanshuo5 分钟前
鸿蒙UI开发全解:JS与Java双引擎实战指南
前端·javascript·harmonyos
全干engineer17 分钟前
Spring Boot 实现主表+明细表 Excel 导出(EasyPOI 实战)
java·spring boot·后端·excel·easypoi·excel导出
Fireworkitte26 分钟前
Java 中导出包含多个 Sheet 的 Excel 文件
java·开发语言·excel
撰卢29 分钟前
如何提高网站加载速度速度
前端·javascript·css·html
10年前端老司机34 分钟前
在React项目中如何封装一个可扩展,复用性强的组件
前端·javascript·react.js
Struggler28137 分钟前
解决setTimeout/setInterval计时不准确问题的方案
前端