web-dev-qa-db-ja.com

標準のVBA関数の「プロジェクトまたはライブラリが見つかりません」

だから、他の人のExcelアプリをPCで実行する必要があり、日付、形式、16進、中間などの標準機能で「プロジェクトまたはライブラリが見つかりません」と表示されます。

いくつかの調査では、これらの関数の前に「VBA」を付けると示されます。 「VBA.Date」のように、それはうまく動作します。

Webページは、システム上のプロジェクト参照と関係があることを示唆していますが、開発者のシステムでは問題ないはずです。私はしばらく他の人からこれに対処するつもりであり、これらのアプリケーションを他の多くの人に配布するので、Excelのセットアップの何が間違っているのか、または何を変更する必要があるのか​​を理解する必要がありますさまざまなシステムで実行できるようにxlsファイル。みんなに「VBA」を使わせないようにしたい。明示的な参照としてですが、理想的な解決策がない場合は、それが私たちがしなければならないことだと思います。

  • 「VBA」の作り方私のプロジェクトのプロパティ/参照/などで暗黙的ですか?

-アダム

72
Adam Davis

まったく異なるライブラリへの参照が欠落している場合、標準関数でエラーが発生しました。

VBAエディターで、メニューから[コンパイル]コマンドを起動し、[参照]ダイアログをチェックして、不足しているものがないかどうかを確認し、不足している場合はこれらのライブラリを追加します。

一般に、完全なVBAコードをコンパイルし、配布前にドキュメントを保存することをお勧めします。

60
Dirk Vollmar

同じ問題がありました。これは私のために働いた:

  • VBで[ツール]"[参照]に移動します
  • ライブラリ「Crystal Analysis Common Controls 1.0」のチェックを外します。または任意のライブラリ。
  • これらの5つの参照はそのままにしてください:
    1. Visual Basic For Applications(これはVBA言語を定義するライブラリです。)
    2. Microsoft Excel Object Library(これにより、Excelのすべての要素が定義されます。)
    3. OLEオートメーション(これは、ドキュメントのリンクと埋め込み、他のアプリケーションの自動化、およびExcelが外部との通信に使用するCOMシステムの「配管」のタイプを指定します。)
    4. Microsoft Office(これは、コマンドバーやコマンドバーコントロールなど、すべてのOfficeプログラムに共通するものを定義します。)
    5. Microsoft Forms 2.0ユーザーフォームを使用している場合、これは必須です。このライブラリは、ユーザーフォームやフォームに配置できるコントロールなどを定義します。
  • 次に保存します。
29
andres

私はこの正確な問題を経験し、ユーザーのマシンで、依存ダイアログの1つが参照ダイアログで「MISSING」としてマークされていることを発見しました。その場合、Office 2007の私のバージョンでは利用できましたが、クライアントデスクトップでは利用できなかったオフィスフォントライブラリがありました。

表示されるエラーは、完全な赤ニシンです(divoが指摘)。

幸いなことに、ライブラリからは何も使用していなかったため、XLA参照から完全に削除することができました。 divoの拡張が推奨するベストプラクティスは、対象となるすべてのOfficeバージョンでXLAをチェックするテストです(いずれにしても悪い考えではありません)。

15
RedBlueThing

私の場合、VBAライブラリ(私の参考資料にある)とMicrosoft Office Object Library(同じくある)で定義されているように、関数はあいまいでした。 Microsoft Office Object Libraryを削除しました。 VBAを使用する必要はありません。プレフィックス。

9
blue_wardrobe

私の場合、自宅(Visioなし)で(Visioがインストールされた)オフィスコンピューターで行われた作業をチェックしていました。 VBAは単純なデフォルト関数にハングアップしているように見えますが、問題は、Visioライブラリへの参照がまだアクティブになっていることです。

0
SmrtGrunt