您能以编程方式访问Excel VBE选择吗?

mik*_*inz 1 excel vba vbe

如果我在Excel VBE中打开了一些VB组件,其中一些文本突出显示,

在此输入图像描述

有没有办法以编程方式获取文本"zBool"?

最好不要使用Sendkeys

6x新西兰Steinlager啤酒(一个很好的解决方案),另一个很好的解决方案

问:黑羊为什么吃不到白羊?

答:因为没有那么多

Tim*_*ams 6

添加对"Microsoft visual basic for applications extensibility ..."的引用

Sub Tester()

Dim oVBE As vbe
Dim startLine As Long, startCol As Long
Dim endLine As Long, endCol As Long
Dim sContent As String, tmp As String, l As Long
    Set oVBE = Application.vbe

    oVBE.ActiveCodePane.GetSelection _
        startLine, startCol, endLine, endCol

    For l = startLine To endLine
        tmp = oVBE.ActiveCodePane.CodeModule.Lines(l, 1)
        If l = endLine Then tmp = Left(tmp, endCol - 1)
        If l = startLine Then tmp = Right(tmp, (Len(tmp) - startCol) + 1)
        sContent = sContent & IIf(Len(sContent) > 0, Chr(10), "") & _
                  tmp
    Next l


    Debug.Print sContent

End Sub
Run Code Online (Sandbox Code Playgroud)

GetSelection方法:http://msdn.microsoft.com/en-us/library/aa443954( v = vs.60) .aspx

请参阅此处了解如何使用返回的信息访问实际文本:http: //www.cpearson.com/excel/vbe.aspx (我确定它在某处...)

编辑 - 为我自己的教育做了那
件事... 我会把它放在你的标签上;-)