最近、何らかの理由で「MSXML2.DOMDocument」を「MSXML2.DOMDocument40」に変更しました。自分のコンピュータでは動作しますが、同じコードが別のコンピュータでは動作しません。理由は何でしょうか?いくつかの答えを提案してください。
1 に答える
MSXML2.DOMDocument
は常にの同義語ですMSXML2.DOMDocument30
。これは、VBA(msxml3.dll)の「MicrosoftXML、v3.0」によって参照されるライブラリに対応します。
Microsoftは、開発者がアプリケーションで「Microsoft XML、v6.0」ライブラリ(msxml6.dll)をターゲットにすることをお勧めします。これは、そのライブラリへの参照を設定してから、適切なタイプを使用することによって行われますMSXML2.DOMDocument60
。
v6.0ライブラリを使用できない場合、開発者は代わりに「Microsoft XML、v3.0」ライブラリ(msxml3.dll)にフォールバックする必要があります。
特定のシステムでv6.0およびv3.0以外のバージョンが使用可能であるという保証はないため、他のバージョンのXMLライブラリを使用することはお勧めしません。使用MSXML2.DOMDocument40
したものは「MicrosoftXML、v4.0」ライブラリ(msxml4.dll)に対応しており、このコードが実行されていないコンピューターでは、そのライブラリを使用できない可能性があります。
編集:遅延バインディングを使用している場合は、ここで適切なProgIDを見つけることができます。DOMDocument60の場合、次を使用しますCreateObject("Msxml2.DOMDocument.6.0")