excel - 参考 VBA 从工作簿中运行宏,其名称在单元格区域中指定 & 隐藏模块错误中的编译错误
问题描述
因此,我一直在尝试从工作簿 B.xlsm 中的另一个宏运行工作簿 A.xlsm 中存在的过程,即 Test_v1.1。我有 2 个问题。
1> 工作簿 A.xlsm 即 Test_v1.1 不断更改文件的版本号,
因此我在工作簿 B.xlsm 的单元格“A2”中引用了工作簿名称我成功地根据单元格引用打开工作簿但无法运行程序。当我使用“Application.run”命令时,需要如何在单元格中引用工作簿名称
2> 当我使用 Application.run 时,出现“隐藏模块模块 3 中的编译错误”。我该如何克服这一点。为了让您在受密码保护的 Test_v1.1 中发布模块,并且它自身的宏具有额外的引用,即 Access 等,工作簿 B.xlsm 没有。
Sub extract_data()
Application.DisplayAlerts = False
Application.ScreenUpdating = False
Application.CutCopyMode = False
Excel.Application.EnableEvents = False
Test_ver = ActiveWorkbook.Worksheets(1).Range("A2").Value
Dim sdate As Date
Dim edate As Date
Dim test_wb As Workbook
Dim test_ws As Worksheet
Set test_wb = Workbooks.Open("'path" & Test_ver)
Set test_ws = test_wb.Worksheets(1)
sdate = Date - 1
ydate = Date
test_ws.DTPicker1.Value = sdate
test_ws.DTPicker2.Value = edate
' Run procedure on Test macro --------------------------------------------> Need help here
Application.Run "Test_v1.1.xlsm!Button1_Click"
Application.DisplayAlerts = True
Application.ScreenUpdating = True
Application.CutCopyMode = True
Excel.Application.EnableEvents = True
End Sub
编译错误:
“隐藏模块模块 3 中的编译错误”
这就是我得到的
解决方案
推荐阅读
- java - 函数式接口和递归
- javascript - 警告:失败的道具类型:提供给“路线”的无效道具“组件” - react-router-dom
- r - 如何从 tibble 中删除非缺失值与其他行中的值子集匹配的行?
- java - 如何在 java 中为我的 morse cod 编写 junit 测试
- ios - 不兼容的指针类型将“AVCapturePhotoSettings *”发送到“NSArray”类型的参数
* _Nonnull' - azure - Azure VM 核心与 vCPU
- sql - 如何根据第 1 列更新第 2 列,然后根据第 2 列更新第 3 列
- c++ - 当类定义在 .CPP 中时,CMake For Google 测试
- java - 战舰计划的问题,增加的舰船数量超过了允许的最大舰船数量
- python - 我可以同时使用 Selenium 和 Brave 吗?