Excel VBA代码选择打开的Excel文件

时间:2017-11-21 05:44:28

标签: excel vba excel-vba

我已经通过各种网站进行了大量搜索,但无济于事。

以前我创建简单的VBA来从自动生成的XLS中选择XLS,该XLS由软件创建,如下所示。这个excel没有任何文件类型,因为它还没有保存到任何地方,我不打算保存它。

Sub Test()

    Windows("All Jobs").Activate

End Sub

最近,该软件生成新文件名“所有作业(0 - XX)”,其中XX可以是1到100之间的任何数字。因此,上面的代码不再起作用。添加*没有帮助。

有什么建议吗? 提前致谢。 Zaiem

2 个答案:

答案 0 :(得分:1)

您可以遍历Workbooks(Excel)中的所有Application,如果当前工作簿的名称为Like "All Jobs" & "*">>这是你想要的工作簿。

注意:验证您需要Activate工作簿,通常不需要。

<强>代码

Option Explicit

Sub Test()

Dim WB As Workbook
Dim AllJobSWB As Workbook

For Each WB In Application.Workbooks
    If WB.Name Like "All Jobs" & "*" Then
        Set AllJobSWB = WB ' set the matched workbook
        Exit For
    End If
Next WB

' if you must activate the workbook, use the line below
AllJobSWB.Activate

End Sub

答案 1 :(得分:1)

您可以循环访问Windows集合以检查每个窗口的标题。试试这个:

Private Sub Test()
    Dim myWindow As Window
    For Each myWindow In Windows
        If Left(myWindow.Caption, 8) = "All Jobs" Then myWindow.Activate: Exit Sub
    Next myWindow
End Sub