
win7からwin10にPC変えてからマクロが動かなくなりました。
Dim i,d
For i =3 To 50
If Cells(i,1).Value <> "" Then
d=Cells(i,4).Value
Worksheets(d).PrintOut
End If
Next
こんな感じでA列に日付が入っていたらD列に対応したシートを印刷するマクロです。
win7の時は普通に動いていたんですがwin10になってからインデックスが有効範囲にありません的なメッセージが出て動かなくなりました。
デバッグで一行づつ実行すると何事もなく動作するのですが何が原因か分かる人がいましたらご教授の程よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
こんばんは、
>デバッグで一行づつ実行すると何事もなく動作する
OSバージョン変更に伴いOfficeに不具合が発生した可能性も捨てられません。
この場合、Officeの修復などを実行してみてください。(簡単な修復から再インストールまでいくつか方法があります)
OS,Officeに問題がない場合は、GooUserラックさんの回答にあるように、VBAコードの問題と思います(示されているものならば)
ただ、この条件で今までエラーが返らなかった事には、疑問もありますが。。
示されているVBAコードには明らかに対策が必要な部分がありますので、そのためエラーが返る可能性があります。
(今回の不具合がそこにあるとは断言できませんが)
>If Cells(i,1).Value <> "" Then A列対象セル空白でなければ、、です。
これだけでは、D列対象セルが空白でも(又は何が入っていても)実行されてしまいますね。
まあ、詳しい表組み参照式など分かりませんので断言できませんが、コードだけで判断するに、
最低でも下記の様にエラー対策をするべきです。
If Cells(i,1).Value <> "" and Cells(i,4).Value <> "" Then
また、検証が必要な事として、シート自体をVBAで作成している場合、そのコードでD列への出力部分での問題の可能性もあります。
もっとも、型やシートなどを省略されているので、投稿用に走り書きしたのかも知れませんが、
コードの対策、ダメならOfficeの修復、新規ブックに移すなどなど、、不具合を確認しながら、対策(原因)を切り分けて進めてみてはいかがでしょう。
エラー対策の提案ありがとうございます。
アクティグシートを明示してコード書いたら直りました。
今まで正常に動作していたのが不思議ですがOS変わるとこういう事もあるんだと勉強になりました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) マクロ実行時、自動で背景色を変えたい。 C列にあるチェックボックスをチェックするとB列に「TRUE」 4 2022/11/08 11:14
- Visual Basic(VBA) VBAで最新のデータを別シートに転記する方法をお教えください。 3 2022/04/07 19:20
- Visual Basic(VBA) 別シートから年齢別の件数をカウントしたいの続き 5 2023/01/24 00:16
- Excel(エクセル) エクセルVBAでオブジェクトが必要です 2 2022/09/10 16:37
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
- Visual Basic(VBA) まとめシートから集計シートへA列のコードが一致したら1行コピーするマクロをネット上で見つけました。こ 1 2022/08/30 14:11
- PowerPoint(パワーポイント) エクセルのマクロについて教えてください。 1 2022/03/25 17:03
- Visual Basic(VBA) ExcelVBAのマクロについて。 9 2022/05/04 14:50
- Visual Basic(VBA) 別シートから年齢別の件数をカウントしたい 6 2023/01/23 12:00
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel2019 非表示モジュール内...
-
cygwin の文字コードについて
-
Accessのエラーについての質問です
-
VBA+VBSによる別インスタンスB...
-
エクセルに埋め込んだPDFの実行...
-
アプリケーションエラー
-
iexplore.exeでハンドルされて...
-
アプリケーションでサーバー エ...
-
コンパイルエラー『名前付き引...
-
ワードで実行時エラー 424 オ...
-
遠隔地にあるパソコンのオフィ...
-
Windows2000でアップデート時に...
-
エラー1402キー
-
ステートメントの末尾が不正です
-
LinuxのFedora31のdnfdragoraに...
-
RからX11がうまく呼び出せてい...
-
"echo off"の動きをLinuxのシェ...
-
ワードかエクセルで、KOKU...
-
エクセル宛名ラベルが重複する
-
一点一葉とはどんな意味ですか?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel2019 非表示モジュール内...
-
VBA+VBSによる別インスタンスB...
-
Apache2.4の起動でエラー
-
"echo off"の動きをLinuxのシェ...
-
エクセルに埋め込んだPDFの実行...
-
ステートメントの末尾が不正です
-
イベントプロパティに指定した...
-
Linux再起動後のエラーメッセー...
-
VBA オートメーションエラー(...
-
「パラメータが無効のため、処...
-
遠隔地にあるパソコンのオフィ...
-
(Windows7)VB6でODBC接続エラー
-
[ マクロ ] エラーになったり...
-
ペイントで取り込んだ画像のサ...
-
OUTLOOKが起動しない
-
実行時エラー429の解決方法につ...
-
UNIXデータ展開時のエラーメッ...
-
UNIX(Solaris)でのtarファイル...
-
コンパイルエラー『名前付き引...
-
ACCESS 「COMDLG32.OCXのエラー」
おすすめ情報