次のコードを実行させるとファイル Book1.xlsx がオープンされますが、VBAのコードが実行されません。そのため次のコードが実行できなくなっています。環境はWindows 10 、Excel2016 です。
〜 前のコード 〜
Workbooks.Open ("¥¥Mac¥Home¥共有フォルダ¥book1.xlsx")
〜 次のコード 〜
前のコードにブレークポイントを設定し、そこで一度止めてから実行を継続させると正常に次のコードのブレークポイントで止まります。しかし、前のコードでブレークポイントを設定せずに実行させると次のコードに設定したブレークポイントで停止しません。
book1.xlsxはまっさらなファイルでVBAのコードはありません。
何が原因でしょうか。
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
目的として考えている「Worksheets.count」はオープンされた「book1.xlsx」のシート数ですか?それとも、マクロが書かれているブックのシート数でしょうか?
----------------------------------------------------------
間違いは無いと思うのですが、念の為
①「For i2 = 1 To Worksheets.count」の前の行に「MsgBox ("見えますか")」追加してもメッセージボックスは出ないんですよね。
② もちろんブレークポイントは全て外してあるんですよね。
No.1
- 回答日時:
もしかしたら他のブックが開いてしまったので、アクティブブックがそちらに移ってしまったために一部のコードが実行できなくなってしまったのでは?(「Range("A1").Select」のようなコードは使えなくなります)
原因がそれならば、ファイルオープン後にすぐ「ThisWorkbook.Activate」を実行すると良いかもしれません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 1つのファイルを3つのフォルダにファイル名を【明日の日付】にして、コピーをしたい 2 2022/12/21 17:43
- Visual Basic(VBA) VBAコードを張り付け後のエクセルの進め方 2 2023/02/07 18:24
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2022/03/28 14:52
- Visual Basic(VBA) Excel VBA マクロ 先頭行の固定とオートフィルター設定を全てのシートに適用したいです 1 2022/11/12 15:32
- Excel(エクセル) 1つのファイルを複数のフォルダにファイル名を【明日の日付】にして、コピーしたい 5 2022/12/13 20:11
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 12:30
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/06 13:01
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 11:27
- Excel(エクセル) エクセルシートをVBAでpdfで保存したい 2 2022/06/27 10:17
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/03/27 13:25
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
Sub Auto_Open() 実行されない
Excel(エクセル)
-
ExcelVBAで質問です。Workbook_openイベントが発生し
その他(Microsoft Office)
-
エクセルVBAが途中で止まります
Visual Basic(VBA)
-
-
4
エクセルVBAでブックを開くと処理が終わってしまう
Visual Basic(VBA)
-
5
Workbook_openでマクロが実行されない
Excel(エクセル)
-
6
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
7
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
8
ExcelVBAでスペースキー操作したい
Excel(エクセル)
-
9
メッセージボックスのOKボタンをVBAでクリックさせたい
Visual Basic(VBA)
-
10
VBAで「致命的なエラー」が出ました。どのくらい致命的なんでしょうか?
Access(アクセス)
-
11
エクセルvbaで転記したのですが、数字のゼロが消えてしまいます。 ゼロも転記するためにはどうしたらい
Excel(エクセル)
-
12
ExcelVBAでPDFを閉じるソース
その他(Microsoft Office)
-
13
Openイベントを開始させないでエクセルを開く方法を教えて下さい
Windows 10
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
フィルターかけた後、重複を除...
-
1日に1人がこなせるプログラム...
-
access2003 クエリSQL文に...
-
JavaScriptの定数名が取り消し...
-
1、Rstudioで回帰直線を求める...
-
chatgptでつくってもらったコー...
-
エクセルに見えない文字(JISX0...
-
【VB6】実行ファイルとした後、...
-
ExcelのVBAコードについて教え...
-
ACCESSユニオンクエリでORDER B...
-
JavaScript|特定URLだった時、...
-
特定行の背景色を変えたいのですが
-
変数名「cur」について
-
パイソン。スクレイピング。Chr...
-
pythonにてseleniumを使うも、...
-
まちがっているところ
-
Exel VBA 別ブックから該当デ...
-
【EXCEL】UserFormで入力して ...
-
VBAでファイルオープン後にコー...
-
ペンダントライトのコードの色...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
フィルターかけた後、重複を除...
-
Exel VBA 別ブックから該当デ...
-
access2003 クエリSQL文に...
-
1日に1人がこなせるプログラム...
-
JANコードとPOSコードは同じ?
-
変数名「cur」について
-
JavaScriptの定数名が取り消し...
-
COBOLの文法
-
JavaScript|特定URLだった時、...
-
Accessの文字列部分一致を合計...
-
1、Rstudioで回帰直線を求める...
-
PreviewKeyDownイベントが2回...
-
ACCESSユニオンクエリでORDER B...
-
エクセルに見えない文字(JISX0...
-
Excel VBAでOpenTextのFieldInf...
-
VBAでファイルオープン後にコー...
-
chatgptでつくってもらったコー...
-
特定行の背景色を変えたいのですが
-
JIPS-Eコードのコード表について
-
Nullの使い方が不正です。
おすすめ情報
目的の book1.xlsx が開いていることは確認しています。
>ファイルオープン後にすぐ「ThisWorkbook.Activate」を実行する
コードが実行されないので、ThisWorkbook.Activate」を実行する ことができない状態です。
ファイルオープン後のコードは次の通りです。
For i2 = 1 To Worksheets.count
With sBook.Sheets(i2)
If .Cells(8, 2) = "パラメータ" And .Cells(8, 5) = "値の並び" Then
ss = Split(.Cells(1, 23), " ")
vernum = Left(ss(0), 2)
If vernum = "v7" Or vernum = "v6" Then
オープンされた「book1.xlsx」のシート数です。
メッセージボックスは出ません。
ブレークポイントは全て外してあります。
疑問なのは、一度手前でブレークポイント設定すると、そこから継続させた場合は正常にコードが実行されるのに、手前で止めないでそのまま実行させると次のコードが実行されない点です。
謎です。
ご指摘の確認は既に行っています。現象は同じでした。
一度ブレークポイントで止めると、開いたブックが「前面」になり、そのあとのコードが正常に実行できるが、止めないで連続で実行させると、ブックの「参照の仕方」に問題があり、コードが実行されないように見えているようです。
この辺りを重点的に調べてみます。
自己解決しました。
原因はVBAの仕様でした。
今回のコードはShiftキーを押しながらボタンをクリックすることで実行されます。この場合、VBAの仕様により、Shiftキーが押下された状態では、File Open以降のコード実行が停止するために起きた現象でした。
詳しくは次のページに解説があります。
https://support.microsoft.com/ja-jp/kb/555263
この問題で5時間近く費やしてしまいました。でも解決できてよかったです。
VBAの仕様ではありませんでした。
VBAのバグでした。