none
Access2016とOffice2013での動作不具合 RRS feed

  • 質問

  • 今までAccess2016とOffice2013の組み合わせでAccessのアプリ(VBAを含む)を動作させていました。

    最近、Accessのアプリを実行すると『データベースまたはプロジェクトに、ファイル’EXCEL.EXE'version1.9.を参照する切断された参照が含まれています。』のエラーで動作しなくなってしまいました。

    上記の組み合わせでもAccessで新規のファイルは作成できます。

    AccessのアプリはAccess2016とOffice2016 の組み合わせのシステムだと問題なく動作しています。

    変化点はAccess2016が10月16日にリリースした 1709 8528.2147 にバージョンアップが関係している気がしますが
    Access2016とOffice2013で同様のトラブルは起きていますでしょうか?

    2017年11月9日 9:38

すべての返信

  • VBAエディターを開いて、[ツール]-[参照設定]のExcelライブラリーが「参照不可」となっていませんか。

    一つのファイルを異なったバージョンで使うとこのようなエラーが発生することがあります。

    このような場合の解決法は、事前バインディングを遅延バインディングに変更するといいでしょう。

    異なったバージョンで共通で使うようにするは遅延バインディングにするのが常道です。

    事前バインディングと遅延バインディング(実行時バインディング)|ExcelマクロVBA技術解説 

    具体的な手順は、参照設定のExcelライブラリーのチェックを外す。

    モジュール内の

    Dim objExcel As Excel.Application
    Set objExcel As Excel.Application
    というようなコードを、下記のように書き換える。

    Dim objExcel As Object
    Set objExcel = CreateObject("Excel.Application")

    前者のコードが事前バインディング、後者が遅延バインディングになります。


    2017年11月15日 2:15