2

数千のワークブックのリストを実行し、それぞれからデータを取得するスクリプトがあります。

スクリプトが特定のワークブックを開こうとすると、次のエラーが発生します。

Compile Error: Can't find project or library

このメッセージは、マクロやアラートを使用せずに次のように開くことで、参照の問題が原因であると理解しています。

dim bk as workbook
for each path in listOfWorkbookPaths
 Application.DisplayAlerts = False
 Application.EnableEvents=false
 set bk=workbooks.open(path)
 Application.EnableEvents=true
 Application.DisplayAlerts = True
 collectData(bk)
next

しかし、これはうまくいきません。まだコンパイルエラーが発生します。このエラーが表示されないようにする方法はありますか?

4

1 に答える 1

1

設定を変更する必要がありAutomationSecurityます:

Sub ImportFromExternalWorkbooks()
    ワークブックとしての薄暗いbk
    MsoAutomationSecurityとしてのDimsecAutomation

    secAutomation = Application.AutomationSecurity
    Application.AutomationSecurity = msoAutomationSecurityForceDisable
    listOfWorkbookPathsの各パスについて
        bk = Workbooks.Open(path)を設定します
        collectData bk
    次
    Application.AutomationSecurity = secAutomation
サブ終了
于 2013-01-16T07:28:52.233 に答える