【问题标题】:Excel: Trigger double click eventExcel:触发双击事件
【发布时间】:2012-09-28 13:03:35
【问题描述】:

我有一个受第三方密码保护的 Excel 工作簿。该工作表中的交互是通过双击来切换字段中的复选标记来完成的。我必须双击 7000 次才能完成这项任务,所以我想自动化它。我怀疑工作表正在使用 BeforeDoubleClick 事件。密码加密隐藏了实际的实现。

我开始在自己的工作表中运行测试,没有密码,以解决这些问题。

我已经尝试过 Application.DoubleClick:

Range("B17").Select
Application.DoubleClick

但这不会触发我的事件代码 (Worksheet_BeforeDoubleClick),它适用于“真正的”双击。

这显然是根据 MS 设计的: http://msdn.microsoft.com/en-us/library/office/aa220809(v=office.11).aspx

DoubleClick 方法不会导致此事件发生。

我不能直接调用第三方事件代码,因为 sub 是私有的。有没有办法解决这个问题?

我在 Excel 2003 和 2007 中都尝试过。

【问题讨论】:

  • 您好,我也遇到了同样的问题。如果您找到任何解决方法,请告诉我!我太困惑了...

标签: excel password-protection double-click vba


【解决方案1】:

这是您可以尝试的解决方法(我在 Excel 2007 上尝试过)

  1. 公开BeforeDoubleClick 事件(我在Sheet1 中使用了这个)

    Public Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

  2. 在你的宏中调用这个函数

    Range("B17").Select
    Call Sheet1.Worksheet_BeforeDoubleClick(Selection, False)
    

【讨论】:

    猜你喜欢
    • 2018-03-31
    • 2012-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多