提问人:M Muaz 提问时间:3/22/2021 最后编辑:PᴇʜM Muaz 更新时间:3/22/2021 访问量:842
是否可以在 excel 文件外部运行宏?
Is it possible to run a macro externally on an excel file?
问:
目前,我每天将数据从软件导出到 excel 文件。
有很多重复性任务,所以我创建了一个宏。
我打开新导出的 excel 文件,然后将其另存为“启用宏的工作表”
我打开启用宏的工作表
我将宏导入 excel 文件
我运行宏
有没有办法在不使用 VBS 或任何其他方式执行上述所有步骤的情况下运行宏?
我不知道是否有解决方案,但我更希望外部 VBA 操作员询问导出文件的位置,然后完成其余的工作
答:
2赞
Pᴇʜ
3/22/2021
#1
您可以轻松打开任何其他工作簿,并在该工作簿上运行任何命令。因此,您可以在 Excel 文件中包含以下宏,并在其中操作数据。MyMacroFile.xlsm
C:\Temp\WorkbookToRunMacroOn.xlsx
Option Explicit
Public Sub DoTasksOnOtherWorkbook()
'open another workbook
Dim OpenWorkbook As Workbook
Set OpenWorkbook = Application.Workbooks.Open(Filename:="C:\Temp\WorkbookToRunMacroOn.xlsx")
OpenWorkbook.Worksheets("Sheet1").Range("A1").Value = "Changed A1 in another workbook"
'don't forget to close the workbook and save or not
OpenWorkbook.Close SaveChanges:=True
End Sub
如果要要求用户选择要打开的文件,可以使用 Application.FileDialog 属性,该属性返回一个文件名,然后可以在 中使用它来打开它。Application.Workbooks.Open
下一个:计算已用行中的空单元格
评论
Workbook
sheets(1).range("a1:A10")
wbMyWorkbookOpened.sheets(1).range("a1:A10")