excel - 如何运行另一个工作簿的宏?
问题描述
我正在 workbook1 中编写一些代码以在 workbook2 中打开和运行宏。Workbook_Name 是带有“.xlsm”的workbook2 的名称。我在workbook1中应用了以下代码,希望在workbook2中运行宏“Sheet8.Compute”。但它不起作用。请协助。
ActiveSheet.Application.run "'" & Workbook_Name & "'!Sheet8.Compute"
解决方案
问题是您的 SubCompute
存储在 Sheet 的工作表代码中(至少您的代码行表明了这一点)。在这种情况下,您需要在没有工作表名称的情况下调用它:
Application.run "'" & Workbook_Name & "'!Compute"
但是,将事件例程以外的代码放入模块中是一种很好的做法。在这种情况下,您可以使用或不使用模块名称来调用例程。假设模块名称Module1
,您可以同时使用:
Application.run "'" & Workbook_Name & "'!Compute"
Application.run "'" & Workbook_Name & "'!Module1.Compute"
推荐阅读
- reactjs - 如何在 React 中正确导入库?
- php - 您如何在重复的反向引用中获得所有匹配项?
- akka - 控制一种类型的活动参与者的数量
- sql - 我可以应用“NULLS LAST”之类的东西,但不按非空的列值排序吗?
- error-handling - 芹菜错误处理
- r - 如何使用原始文件名循环保存多个文件
- laravel - 我在 VPS 或共享主机优惠上是否有更好的表现?
- rabbitmq - 为了确保并发性,同一组在多个队列中工作(FIFO)
- mysql - 将用户表连接到两个不同网站的两个不同数据库
- javascript - 未捕获的类型错误:无法读取 GLTFLoader.load 处未定义的属性“extractUrlBase”