Sub test1()
変数1 = IsEmpty(Range("C1"))
If Range("A1") > 0 And Range("B1") = 0 And 変数1 = True Then
test2
End If
End Sub
止まったときのデバッグでの表示は
Range("A1")は「100」(セルの中身)
Range("B1")は「0」(セルの中身)
変数1はRange("C1")がエラー表示なので「True」
すべての条件を満たしているのですが、
IF条件のところで止まってしまいます。
(IF条件のところの1行が黄色くハイライトになっている状態)
止まったデバッグの後に、F5を押して実行させると、
IF条件の続きから実行されて、test2が実行されて処理が終了します。
何で、IF文のところで一度止まってしまうのかわかりません。
No.1ベストアンサー
- 回答日時:
>変数1はRange("C1")がエラー表示なので「True」
そのような決まりはありません。
エラー値はエラーとして取得するので、書かれたような真偽の判定はできません。
ISERROR関数等を使ってエラーを検出する事になります。
http://excel.onushi.com/function/iserror.htm
この回答への補足
ご返答誠にありがとうございます。
申し訳ございません。
『変数1はRange("C1")がエラー表示なので「True」』のところですが、
誤記でした。
Range("C1")が空白だった場合、Trueです。
セルが空白かどうかを判断するため、IsEmpty(Range("C1"))を使用しました。
No.3
- 回答日時:
こんにちは。
失礼かもしれませんが、一応確認します。
該当のステップでブレークポイントを
設定しているということはないでしょうか。
実行してない状態でマクロのソース見て頂いて、
もし該当行の右端に茶色の●印がついて行全体が茶色で
反転表示されてるのであればブレークポイントとなってますので
実行すると必ずそのステップで実行停止します。
もしそうだったのであれば●印をクリックして
表示を消して保存すればブレークポイントは
はずれます。
よろしくお願いします。
ブレークポイントは設定してません。
ご指摘いただいたとおり、
コード上は問題が無いようですね。
コードに間違いが無いということがわかったので助かりました。
誠にありがとうございました。
試行錯誤して、原因を見つけてみます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) [Excel VBA] このコードでは行の挿入や行の消去をすると13のエラーが出てしまう。 3 2022/12/09 00:29
- Visual Basic(VBA) VBAの繰り返し処理について教えてください。 3 2022/08/02 13:21
- Excel(エクセル) 表示形式、文字列セル(列)に数式を入力するには マクロ 1 2022/09/18 10:53
- Visual Basic(VBA) excel VBA if文について 3 2022/03/27 17:42
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- Visual Basic(VBA) 動きっぱなしです。止め方とプロシージャの間違いを教えて下さい! 5 2022/08/15 23:08
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/02/02 09:25
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
実行時エラー 438になった時の...
-
エクセルエラー13型が一致しま...
-
実行時エラー3001「引数が間違...
-
VBAがブレークモードになっ...
-
EXCEL VBAマクロ中断でデバッグ...
-
なぜこんな初歩的なVBAのIf文で...
-
VBS実行時エラー オブジェクト...
-
Outlook.ApplicationをCreateOb...
-
ExcelVBA Range クラスの Page...
-
VB6+SQL サーバー 2000 で 実行...
-
OLEDB.NETで接続できない
-
VBSで変数の宣言はできないので...
-
EXCEL/VBAで、自分のPCだけエラ...
-
VBAでのエラー
-
ExcelのVBAのAutoFillの使い方...
-
実行時エラー -'-2147417848
-
【Excel VBA】マクロをボタンに...
-
[Delphi] データセットは閉じて...
-
Invalid procedure call or arg...
-
DataGridView からの値取得に関...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
実行時エラー 438になった時の...
-
エクセルエラー13型が一致しま...
-
【Excel VBA】マクロをボタンに...
-
マクロについて教えてください...
-
VBAでのエラー
-
実行時エラー3001「引数が間違...
-
ExcelVBA Range クラスの Page...
-
VBAがブレークモードになっ...
-
実行時エラー -'-2147417848
-
なぜこんな初歩的なVBAのIf文で...
-
VBSで変数の宣言はできないので...
-
VBS実行時エラー オブジェクト...
-
EXCEL VBAマクロ中断でデバッグ...
-
Application.ActiveInspectorで...
-
ADODB.Streamを使用してUTF-8を...
-
Outlook.ApplicationをCreateOb...
-
VBAのコードがエラーになっ...
-
EXCEL/VBAで、自分のPCだけエラ...
-
VBAのエラー発生場所をメッセー...
-
ASP.NET OleDbConnectionが定義...
おすすめ情報