|
分類:[VB.NET/VB2005 以降]
No.97391の関連 ですが、
どうやらExcel関連の変数を全部汎用オブジェクト型で宣言して、事後バインディング形式(CreateObjet関数でアプリオブジェクト生成)だと .Netでもエラーにならないようです。
環境を整理すると、
VS :2017(SSDT) or 2019 Office:MS365 Apps For Business(64bit)、SSISでExcel接続用のOLEDBプロバイダーが32bit版しか認識しないため、Access2013ランタイム(32bit)を共存
SSISのプロセス実行タスクで実行 :事前バインディング形式で正常に処理される。 SSISのスクリプトタスク(VB)で実行:事前バインディングではエラーになり事後バインディングだと正常処理 VS2019でコンソールアプリで実行 :SSISスクリプトタスクと同じ、エラー内容も同じ。
エラー事象 WorkbooksOpenの時点で、アプリオブジェクトがキャストできないという内容のメッセージが出る
この現象、64bit Officeと32bit Accessランタイムを共存させると必ず出る現象なんでしょうか? 今のところ、SSISのExcel接続フローとの兼ね合いで32bit Accessランタイムを案インストールするという選択肢はない状況です。
|