如何在插入工作表的非activex文本框中使用VBA激活入门模式?

时间:2016-09-13 02:07:53

标签: excel vba textbox worksheet

我在工作表上手动放置了一个非activex文本框。如果我为它分配一个宏,然后单击文本框按预期运行宏。

但是,文本框上未启用输入模式。宏如何将文本框置于入口模式?

请注意,这是从“插入”功能区插入的文本框。

enter image description here

THX

1 个答案:

答案 0 :(得分:0)

我在发布上述问题之前不久发现了答案:

Sub Activate_Textbox()
          ' stuff to do before edit mode...
          ' ...

          ' get textbox name
          Dim sName As String
          sName = Application.Caller

          ' get textbox shape object
          Dim txtBox As Shape
          Set txtBox = ActiveSheet.Shapes(sName)

          ' enter edit mode (put cursor into textbox)
          txtBox.TextFrame2.TextRange.Select

          ' cleanup
          Set txtBox = Nothing
End Sub

建议保护工作表,否则当文本框具有焦点时,您会看到文本框上的选择控制柄。而且,如果您保护工作表,则需要解锁文本,以便输入:

enter image description here