| 
    
     |  | ▼しん さん: こんばんは。
 
 
 >Excel 2002 で作成したマクロを含むファイルを別の環境(たとえばExcel 2000)で開き、マクロを実行しようとすると、「プロジェクトまたはライブラリが見つかりません」などのコンパイルエラーが発生することがあります。
 >
 >その時は、Visual Basic Editor のメニュー [ツール]-[参照設定] で「参照不可」になっている項目がないか確認します。不要な参照設定は解除します。
 >
 >というようなコメントが「参照設定」の「参照不可」ライブラリの解除方法としてExcelやAccessの参考書などに記載されていますが、この「手動解除」方法を自動化するようなVBAコードはありませんでしょうか?
 
 以下のコードで確認してみて下さい。
 簡単なテストはしました。
 
 '============================================================
 Sub main()
 Call remove_broken_ref(Workbooks("reftest.xls"))
 End Sub
 '===========================================================
 Sub remove_broken_ref(bk As Workbook)
 '有効な参照設定を示していない参照を解除する
 'input  bk : 調査対象ブックオブジェクト
 'output bk : 無効参照を解除されたブック
 With bk.VBProject
 For Each obj In .References
 If obj.isbroken = True Then
 .References.Remove obj
 End If
 Next
 End With
 End Sub
 
 |  |