リモートワーク中に職場のPCで正常に動いていたVBAをノートPCにコピーしてから起動すると、こんなメッセージが表示されました。
「はこのマシンでは利用できないため、オブジェクト を読み込めませんでした。」
うめ
これは初めて見るエラーでした…。
それでは確認した時の流れを順番に確認していきます。
VBAのソースコードを確認
ALT+F11でVBEを起動してF8でステップインすると、コンパイルエラーで止まる。
VBEの参照設定を確認
ProgressBarで止まってたので、参照設定が外れているのかなと思い、「ツール」⇒「参照設定」で設定を確認。
「Microsoft ProgressBar Control」がないんですけど…。
参照設定がない理由
調べてみると32bitでできることが64bitだとできないようです。
今回エラーになったプログレスバーに限った話でなく、64bitだと色々と成約があるようです。
うめ
64bit版は使わない方が良いです!
結局どうしたら良いの?
64bitをアンインストールして32bitをインストールが正しい対応になります。
そもそもキッティングした人がインストールしたを間違えたのが根本的な原因です。
うめ
32bitをインストールしたら、エラーなくVBAが動くようになりました!
こんな猛者もいました
なければ作ればいい。
素晴らしい考え方だと思います!(未検証ですがリンク貼っておきます。)
まとめ
今まで正常に動いていたマクロを別PCにコピーしてから実行した際に「はこのマシンでは利用できないため、オブジェクト を読み込めませんでした。」と表示される場合の対象法は32ビットのOfficeをインストールすると正常に動くようになりました。
うめ
新しい環境でマクロが動かない場合は、新しい環境がおかしくないか確認しましょう!