- ベストアンサー
エクセルのマクロでデータ編集プログラムを作成していますが…。(デバックエラー)
ブック名「データベース」のファイルと、ブック名が変数の「機器No」のファイルを開いた状態で、「データベース」画面から「機器No」画面への切り替えを ⇒ Windows("データベース.xls").Activate … (1) ・ ・ ・ Windows(機器No).Activate … (2) ・ ・ ・ なるマクロで行っています。 ところが、1台のPC(A機/本機で作成)では処理できるのに、他のPC(B機、C機)では(2)のステートメントでデバックエラーが出ます。 PCによってエラーが発生したり、しなかったりする原因が判らず困っています。 エクセルの初期設定に問題があるのでしょうか? OS:WinXP(3機共) 尚、このブックは共有ファイルです。 どなたか原因と解決方法を教えて下さい。 宜しくお願い致します。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
『機器No』が変数なら、部分的なコードの提示では推測で応答せざるを得ません。 変数『機器No』の型の宣言と、値の代入箇所、エラーが出る時の 『機器No』の値の提示が必要です。 Dim 機器No As ??? 機器No = ??? String型なら Debug.Print 機器No 'で確認。 Windows(機器No).Activate
その他の回答 (3)
- lul
- ベストアンサー率41% (10/24)
"機器No"が同じブックのシートを指すのであれば sheets(機器No).activate で良いのでは?
お礼
有り難うございます。 試しましたがダメでした。 質問にも有ります様に >1台のPC(A機/本機で作成)では処理できるのに、他のPC(B機、C機)ではエラーが出ます。 これに原因究明の要素がありそうです。 ネットワークで繋がるA・B・C・D機のうちB・C機だけでエラーが出る事が分かりました。 また内容を変えて「質問」したいと思います。 この場を借りて、皆さん有り難うございました。
- hallo-2007
- ベストアンサー率41% (888/2115)
マクロの記録から得られたコードでしょうか Workbooks(機器No).Activate … (2) で試しては如何でしょうか。
補足
早速の回答ありがとうございます。 この質問は私「m-0-m」が代理で質問したものですが、質問者が帰宅したため「補足・お礼」が遅れますこと、お詫び申し上げます。 質問者は10/31に出社しますので、私に分かる範囲で補足いたします。 >Workbooks(機器No).Activate … (2) >で試しては如何でしょうか。 試しましたがダメでした。 A機ではエラーが出ないので、やはり初期設定に問題があるように思うのですが…。
- n-jun
- ベストアンサー率33% (959/2873)
変数の「機器No」に拡張子”.xls”を含んでいないとか?
補足
早速の回答ありがとうございます。 この質問は私「m-0-m」が代理で質問したものですが、質問者が帰宅したため「補足・お礼」が遅れますこと、お詫び申し上げます。 質問者は10/31に出社しますので、私に分かる範囲で補足いたします。 >変数の「機器No」に拡張子”.xls”を含んでいないとか? 「機器No」は別のブックでは無く、同じブックの別シート内に「機器No」が存在します。従って拡張子は不要だと思うのですが…。 何故、A機以外のPCではエラーが出るのでしょうか?
お礼
有り難うございます。 大変参考になりました。