自定义工具栏中的编辑控件文本在Excel 2013中为空白

问题描述 投票:1回答:1

我在工具栏上具有带有vba编辑控件的Excel插件。这在Excel 2003-2010下已经使用了很长时间。但是在Excel 2013下,无论在编辑控件中键入什么内容,text属性始终为空。代码类似于下面的代码。

如果我将加载项加载为.XLS,则可以正常运行。但是,如果我将其另存为.XLA并尝试使用它,则它将失败。

Sub test()
    Set myControl = CommandBars("test").Controls.Add(Type:=msoControlEdit)
With myControl
    .Caption = Search
    .OnAction = "tester"
End With
End Sub

Sub tester()
  MsgBox "I am gonna serach for: " & CommandBars("Test").Controls(1).Text 
  CommandBars("Test").Controls(1).Text = ""
End Sub
excel vba excel-vba ms-office
1个回答
0
投票

msoControlEdit控件中的Text值是空白。我遇到类似问题,唯一解决的办法,要人工堵塞【输入】或【TAb】键,才可用读到输入值。但是我希望用VBA的宏代码可以实现Enter和Tab键,但是又不知道,如果有这样的代码,又可以写在那里?enter键,压根就不会进入到sub tester()这个程序中来。请教哪位大师,到底如何能读到msoControlEdit控件中的文本值?

© www.soinside.com 2019 - 2024. All rights reserved.