VBA打开其他Excel文件

前言

本节会介绍通过VBA实现打开其他excel文件,包括模糊匹配文件名称、循环同时打开多个文件,并获取工作表及工作簿进行数据操作后,对打开的文件进行保存并关闭操作。


一、打开固定文件名称的文件

场景说明:

1.新建一个宏文件VBA_Code.xlsm

2.与VBA_Code.xlsm文件在同一路径下有名为EmployeeInfo.xlsx的文件

3.需要将EmployeeInfo.xlsx的A1单元格写入当前日期值

示例代码

以下代码中,定义filePath 用来存放当前文件的路径,wswb分别用来存放工作表及工作簿对象

c 复制代码
Sub OpenTheFile()

    Dim filePath As String
    ' 定义工作表及工作簿数组
    Dim ws As Worksheet
    Dim wb As Workbook
    
    ' 定义该文件路径
    filePath = ThisWorkbook.Path
    ' 获取路径下所有文件,这里需要提供完整的文件路径
    Workbooks.Open filePath & "\EmployeeInfo.xlsx"
    
    ' 设置工作表及工作簿
    Set ws = ActiveWorkbook.Worksheets("Sheet1")
    ' 这里也可以通过工作表索引位置来设置,从1开始
    'Set ws = ActiveWorkbook.Worksheets(1)
    Set wb = ActiveWorkbook
    
    
    ' 写入当前时间值
    ws.Cells(1, "A").Value = Now()
    ' 保存并关闭
    wb.Save
    wb.Close
    
    
End Sub

二、模糊匹配文件名称

场景说明:

1.新建一个宏文件VBA_Code.xlsm

2.与VBA_Code.xlsm文件在同一路径下有名为EmployeeInfo202407.xlsx、Test202407.xls的文件

3.需要将EmployeeInfo202407.xlsx和Test202407.xls两个文件的A1单元格都写入当前日期值,但是文件名称中的日期不固定

示例代码

文件名称不固定,可以使用Like 搭配星号<*>进行模糊匹配。完整的代码如下:

c 复制代码
Sub OpenFile()

    Dim myFile As String
    Dim filePath As String
    ' 定义工作表及工作簿数组
    Dim wsE As Worksheet
    Dim wsT As Worksheet
    Dim wbE As Workbook
    Dim wbT As Workbook
    
    ' 定义该文件路径
    filePath = ThisWorkbook.Path
    ' 定义文件路径下的所有文件
    myFile = Dir(filePath & "\*.xls*")
    
    ' 循环处理所有文件
    Do While myFile <> ""
        ' 匹配Employee文件
        If myFile Like "Employee*" Then
            Workbooks.Open filePath & "\" & myFile
            Set wsE = ActiveWorkbook.Worksheets("Sheet1")
            Set wbE = ActiveWorkbook
        ' 匹配Test文件
        ElseIf myFile Like "Test*" Then
            Workbooks.Open filePath & "\" & myFile
            Set wsT = ActiveWorkbook.Worksheets("Sheet1")
            Set wbT = ActiveWorkbook
        
        End If
    Loop
    
    
    ' 写入当前时间值
    wsE.Cells(1, "A").Value = Now()
    wsT.Cells(1, "A").Value = Now()
    ' 保存并关闭
    wbE.Save
    wbE.Close
    
    wbT.Save
    wbT.Close
    
    
End Sub
相关推荐
汉拓3D数字化1 小时前
设计标准化怎么落地?企业设计标准化的5阶段实施路径
科技·excel·系统·软件
灵析表格5 小时前
json_ObjectToKV 函数:Excel解析JSON对象的权威方案
json·excel
灵析表格6 小时前
灵析表格文本处理函数技术白皮书:WPS Excel 官方函数扩展库 18 项文本规整与正则批处理企业落地标准
ai·json·excel·wps
灵析表格1 天前
WPS Excel官方函数扩展库数据安全加密校验函数深度研究报告:Excel国密SM3/SM4加解密、MD5摘要、UUID、Base64与URL编解码全栈解析
excel·wps
AC赳赳老秦1 天前
网页公开附件自动采集:OpenClaw 批量下载页面内嵌 Word/Excel 附件,统一格式后结构化入库
java·python·word·php·excel·deepseek·openclaw
VBAMatrix2 天前
表格导航!实现Word合并附注与多个Excel的数据同步
word·excel·审计报告·审计·会计师事务所·报告工具
AI英德西牛仔2 天前
手机文心怎么导出文档?AI 导出鸭一键解决格式崩塌与批量归档难题
人工智能·智能手机·excel·deepseek·ai导出鸭
AI导出鸭2 天前
Grok苹果版导出表格的工程化解耦方案:AI导出鸭的技术逻辑与批量实践
人工智能·excel·ai导出鸭
reasonsummer3 天前
【办公类110-05】20260807园园通小班“待补充”户籍地址自动修改(Python+EXCEL)
开发语言·python·excel
qq83443103 天前
一款纯前端的excel控件,XuY_Sheet 电子表格组件教程
前端·excel·教程·luckysheet·xuy_sheet控件·前端表格控件