激活不带文件名但使用扩展名的工作簿

时间:2018-10-18 12:27:21

标签: excel vba

我已经通过通过Google搜索一些VBA来逐步学习它们,该网站具有了解答案的最佳格式。我已经能够真正实现许多报告的自动化,但是在搜索此功能时遇到了麻烦。

我有很多报告,我们使用Web界面生成特定数据。文件名在导出时始终是随机生成的,但始终是(只读).xls文件。

我尝试了其他VBA命令,这些命令我进行了大量搜索,但无济于事。使用“ * .xls”似乎不起作用。这些没有文件路径,但是是运行此报告时唯一打开的.xls工作簿。

我将不胜感激。

1 个答案:

答案 0 :(得分:0)

欢迎来到。

在您的问题中,您说没有文件路径,但是是运行此报告时唯一打开的.xls工作簿

如果这是真的(您想要的.xls工作簿是当前打开的唯一工作簿),则此代码可能对您有用。

它将遍历每个打开的工作簿,并检查文件的扩展名。如果是XLS,它将激活它。

Dim f As FileSystemObject

Set f = New FileSystemObject

    Dim WB As Workbook

    For Each WB In Application.Workbooks
        If f.GetExtensionName(WB.FullName) = "xls" Then
            WB.Activate
            'rest of your code
        End If
    Next WB

    Set f = Nothing

要使此代码正常工作,您需要激活参考:

在VBA编辑器中,转到“工具”->“参考”并搜索 Microsoft脚本运行时

enter image description here

希望这可以为您提供帮助