タイトル : Re^9: VB6参照設定(修正) 投稿日 : 2011/12/10(Sat) 13:37 投稿者 : 魔界の仮面弁士
> Set bars = xlApp.CommandBars で > 「実行時エラー '-2147221163 (80040155)': > '~' メソッドは失敗しました: '~' オブジェクト とすると、「CommandBars プロパティの読み取りが失敗している」か 「CommandBars 型への型変換が失敗している」のいずれかのようです。 Dim objCmd As Object Set objCmd = xlApp.CommandBars 'A Set bars = objCmd 'B にした場合、失敗するのは A の行と B の行のいずれでしょうか。 B だとすると、別のクラスまたはインターフェイスで受ける必要がありそうです。 (もしくは、Object 型のまま、以降の処理を続けるか) 失敗する環境のタイプライブラリの内容が分からないので、具体的に どのような型にすれば良いのかは分かりませんけれども。 一方、A の側でエラーになるとすると、CommandBars のディスパッチID が 変更されている端末があるのかもしれません。その場合には、 Set obj = CallByName(xlApp, "CommandBars", vbGet) のようにするか、もしくは Dim objApp As Object Set objApp = xlApp Set objCmd = objApp.CommandBars のように、プロパティ名で名前解決させれば動作するかも…? |