【发布时间】:2016-03-23 06:29:58
【问题描述】:
我有一个 Excel 表格,其中包含一个公式,该公式仅在双击它所在的单元格时进行评估。我一直在尝试在打开的工作簿事件中编写一些代码,以触发双击或 VBA 等效的双击来强制评估此单元格的公式,但找不到任何有效的东西。 我试过了:
Application.Evaluate("I2")
^ 什么都不做
With Range("I2")
.Value = .Value
End With
^也不做任何事情
Dim doubleClick As Variant
doubleClick = Application.WorksheetFunction.DfsCell("TimeSeries", 7.27, Chr(34) & "IRESS_UPDATE!$B$5:$B$36" & Chr(34), 2, , , , , , Chr(34) & "IRESS_UPDATE!$A$2" & Chr(34), Chr(34) & "IRESS_UPDATE!$B$2" & Chr(34), True, 0, False, True, "10:00:00", "16:00:00", 5, "0*5")
^给出运行时错误“438”:对象不支持此属性或方法
有人知道如何模拟双击单元格吗?
【问题讨论】:
-
你试过 application.calculate 吗?
-
使用
Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, ByVal Cancel As Boolean) Cancel = True End Sub事件来确定工作表上的dblclick -
DfsCell 是某种第三方 RTD 功能还是什么?需要更多信息。
-
模拟鼠标事件使用
Private Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)msdn和Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long和Private Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long来获取/模拟鼠标坐标 -
excel默认内置双击动作是启动单元格编辑。双击单元格进行计算是没有意义的,因为您将处于单元格编辑模式。如果您安装了修改默认内置操作的第 3 方插件,您可以调用第 3 方 DoubleClick 程序吗?