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
相关推荐
充电zcx3 小时前
Linux:4:开发工具详解
linux·运维·服务器
泯泷3 小时前
那段文字是谁删的?Yjs 14 正式版之前,一套删除归属方案的实现与边界
前端·javascript·算法
野槐6 小时前
前端项目优化(有了我,会发生...)
前端
aa小小7 小时前
【无标题】
前端
码农客栈7 小时前
linux 交叉编译tslib
linux
计算机魔术师8 小时前
还在单线程跟 AI 聊天?Claude Code 并行多会话让你一个人干三个人的活
前端
志尊宝8 小时前
Vue3 零基础每日笔记(038):亲手封装 useDebounceFn 与 useThrottleFn——高频事件的流量阀
前端·javascript·vue·html·vue3
JavaGuide8 小时前
对标 MinIO!全新一代分布式文件系统正式发布
前端·后端
风骏时光牛马8 小时前
AI驱动自动化业务工作流搭建实践
前端
鱼月半8 小时前
两台电脑直连网络不通怎么办?
linux·网络协议