現在オフラインです。再接続するためにインターネットの接続を待っています

CreateObject コマンドを使用した場合、Excel でアドインが読み込まれない

Support for Office 2003 has ended

Microsoft ended support for Office 2003 on April 8, 2014. This change has affected your software updates and security options. Learn what this means for you and how to stay protected.

現象
CreateObject コマンドを使用して OLE オートメーション オブジェクトとして Microsoft Excel にアクセスすると、アドイン、XLStart ディレクトリにあるファイル、およびデフォルトの新しいブックが読み込まれません。
原因
アドインやファイルを読み込もうとすると、Excel から Visual Basic などの呼び出し元アプリケーションに対して、要求に応答する準備ができていないため後で再試行するよう求めるメッセージが送信されます。呼び出し元アプリケーションでは、この要求を処理できず、それ以降のコマンドの処理が続行できない場合があります。
回避策
マイクロソフトは、この情報をプログラミング言語の使用方法の一例として提供するだけであり、市場性および特定目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。この資料は、例示されているプログラミング言語やプロシージャの作成およびデバッグに使用するツールについて理解されているユーザーを対象としています。Microsoft Support 担当者は、特定のプロシージャの機能についての問い合わせにはお答えできますが、ユーザー固有の目的に合わせた機能の追加、プロシージャの作成などの内容変更は行っておりません。

OLE オートメーション オブジェクトとして Excel を実行するときにアドイン ファイルを読み込むには、アドインを手動で読み込みます。この方法の例を次に示します。

Microsoft Office Excel 2007

Sub LoadAddin()   ' Dimension variable xl as object type.   Dim xl As Object   ' Activate Microsoft Excel and assign to variable xl.   Set XL = CreateObject("Excel.Application")   ' Open the add-in file you want, in this example, XLQUERY.XLAM.   XL.Workbooks.Open (XL.librarypath & "\MSQUERY\XLQUERY.XLAM")   ' If you need to register the functions and commands   ' contained in a resource (XLL), use the RegisterXLL method.   ' In the example below, all functions of Analys32.xll are   ' registered.   ' XL.RegisterXLL "Analys32.xll"   ' Run any auto macros contained in the add-in file   ' Auto macros don't run when you open a file   ' using the Open method.   XL.Workbooks("xlquery.xlam").RunAutoMacros 1   Set XL = Nothing End Sub				

Microsoft Office Excel 2003 およびそれ以前のバージョンの Excel

Sub LoadAddin()   ' Dimension variable xl as object type.   Dim xl As Object   ' Activate Microsoft Excel and assign to variable xl.   Set XL = CreateObject("Excel.Application")   ' Open the add-in file you want, in this example, XLQUERY.XLA.   XL.Workbooks.Open (XL.librarypath & "\MSQUERY\XLQUERY.XLA")   ' If you need to register the functions and commands   ' contained in a resource (XLL), use the RegisterXLL method.   ' In the example below, all functions of Analys32.xll are   ' registered.   ' XL.RegisterXLL "Analys32.xll"   ' Run any auto macros contained in the add-in file   ' Auto macros don't run when you open a file   ' using the Open method.   XL.Workbooks("xlquery.xla").RunAutoMacros 1   Set XL = Nothing End Sub				
詳細
Excel を OLE オートメーション オブジェクトとして呼び出した場合、Excel ではアドインまたは XLStart ディレクトリのファイルが読み込まれないため、読み込み処理はすべて明示的に行う必要があります。アドインを読み込む必要がある場合は、手動で読み込むことができます。

これは、CreateObject コマンドを使用して Excel を呼び出したときに、マクロ エラー、ファイルがロックされている場合の警告、または読み取り専用ファイルの警告によって Excel の読み込みが妨げられないことも意味します。この動作のもう 1 つの利点は、アドインやファイルを読み込む場合よりも、Excel の読み込み時間が短くなることです。
関連情報
Visual Basic for Applications のヘルプの入手方法の詳細を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
226118 Visual Basic for Applications プログラミングの学習に役立つ、利用可能なリソースの一覧
personal.xls personal macro workbook XL2000 XL2002 XL2003 XL2007
プロパティ

文書番号:213489 - 最終更新日: 02/16/2007 02:10:47 - リビジョン: 5.1

Microsoft Office Excel 2007, Microsoft Office Excel 2003, Microsoft Excel 2002 Standard Edition, Microsoft Excel 2000 Standard Edition, Microsoft Excel 97 Standard Edition

  • kbautomation kbvba kbexpertiseinter kbdtacode kbprb kbprogramming KB213489
フィードバック
document.write("