- 締切済み
windows7上でVBAマクロがエラー
仕事で使っているエクセル97で作ったVBAマクロがありますが、winXPからwin7に乗り換えたらエラーがでるようになりました。 コマンドボタン押下によるマクロで、変数フラグに「xxxx=1」という記述でコンパイルエラーが起こり、実行がストップします。 自動処理だけを目的に作っており、定石を踏んだマクロになっておらず、このxxxxにもディメンションで変数型を指定しておらず(こちらにおられる諸兄には怒られそうですが)、 Private Sub CommandButton1_Click() Application.ScreenUpdating = False xxxx = 1 : というソースの中で、開始直後にxxxx=1にフォーカスがあたり、コンパイルエラーになります。 winXPまでは問題なく動作していたマクロです。(Vistaでは試すチャンスがありませんでした) 解決方法はあるのでしょうか。それとも変数にDim定義を追加する修正をソースへいれないとだめでしょうか。 ご存知の方、ご指導ください。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- imogasi
- ベストアンサー率27% (4737/17069)
回答No.2
XXXXはどういう変数ですか(変数名)? エラーコードはなんと出ますか? VBAで、デバッグ・VBAProjecのコンパイルの方をしているのですか。実行ーSubユーザーフォームの実行の方ではどうなりますか。
- kybo
- ベストアンサー率53% (349/647)
回答No.1
「変数を定義されていません」というエラーではないでしょうか? そうであれば、変数を定義するか、シートモジュールの先頭にある「Option Explicit」を消してください。 あと、ツール→オプション→変数の宣言を強制するにチェック入っていると自動で「Option Explicit」が入るのでチェックを外しておきます。