【发布时间】:2018-01-31 06:27:58
【问题描述】:
我的工作表上有一些 activex ListBox 控件。我已经应用了一个宏,可以在任何单元格上双击打开 litsbox。
问题是在 2010 或更低版本的 excel 版本中,由于鼠标光标卡在加号上,我无法从列表框中选择任何项目。
如果我放大/缩小工作表,问题会持续一段时间,然后再次回到相同的加号图标状态。
2010以上的excel版本不会出现这个问题。
编辑: 代码sn-p:
`Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Application.ScreenUpdating = False
Application.EnableEvents = False
Dim colName, strRange As String
strRange = Target.Address
colName = Replace(Target(1).Address(0, 0), Target(1).row, "")
strRange = colName & CStr(1) & ":" & colName & CStr(6)
If ctrl Is Nothing Then
GoTo ExecuteSub
End If
On Error GoTo ExitSub
listBoxName = "ListBox" + CStr(Target.Column)
On Error GoTo ExitSub
Set ctrl = ActiveSheet.OLEObjects(listBoxName)
If ctrl Is Nothing Then
GoTo ExitSub
Else
Cancel = True
ctrl.Enabled = True
ctrl.Top = Target.Top + Target.Height
ctrl.Left = Target.Left
ctrl.Visible =True`
【问题讨论】:
-
Longshot... 但是为什么不在双击事件之后立即尝试
Application.EnableEvents = False看看会发生什么。 -
我已经在 double_click 的开头应用了它,并在最后将其设置为 true。
-
你在双击事件过程中设置
Cancel = True了吗? -
@Variatus 是的,我已经设置好了.. 有影响吗?
-
请添加您的代码副本以打开您的问题的列表框。
标签: vba excel excel-2010