【问题标题】:How to iterate pushing ActiveX command button in Excel?如何在 Excel 中迭代推动 ActiveX 命令按钮?
【发布时间】:2020-01-02 21:44:09
【问题描述】:

我收到了一个带有 ActiveX 控件按钮的电子表格,用于执行一个复杂的宏,我看不到它的 VBA 代码,因为它受密码保护。我需要使用 ActiveX 按钮遍历 1000 个输入值。有没有办法对我在 VBA 或 R 中单击按钮的部分进行编码?

这是我想要实现的目标:

  1. 在 SheetA 上设置输入单元格值
  2. 按下 SheetA 上标有“RunSimulation”的按钮
  3. 将 SheetB 上的输出值复制到单独的表中
  4. 重复

我需要第 2 步的帮助。

【问题讨论】:

  • 备用选项:Crack the password
  • 尽管这样方便,但会违反我的大学合作者的信任,他编写了受密码保护的 VBA 代码,如果我们这样做,他可能会撤回对我们项目的支持。
  • 我建议由于作者是合作者,你让他/她将请求添加到代码中。

标签: r excel vba click activex


【解决方案1】:

您可以在此处使用Application.Run,指定工作簿名称、工作表代码模块和点击处理程序:

Dim i as Long
For i = 1 to 1000
    Application.Run "'WorkbookName.xlsm'!Sheet1.RunSimulation_Click"
Next

【讨论】:

  • 这让我更接近了,但现在我收到错误 "unexpected string constant in "Application.Run " "WorkbookName.xlsm'!SheetA.RunSimulation_Click"" 我也尝试在工作簿名称之前插入完整的文件路径,结果相同。
  • 为什么要加引号?工作簿名称前的单引号,末尾只有一个引号。
  • 谢谢,这适用于我创建的一个新按钮,让我意识到我最初尝试推送的按钮存在一些与此主题无关​​的问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-22
  • 1970-01-01
  • 1970-01-01
  • 2015-06-11
  • 2022-08-12
相关资源
最近更新 更多