Excelで対象のシートを選択した際に、前週の商品単価からプラスマイナス10円以上超過した場合にてメッセージを表示させるマクロを作りたく以下のVBAコードを書いてみましたが、添付画像のように空白セル(B6)があるとメッセージが表示されてしまいます。空白セルを無視することはできないでしょうか?
Private Sub Worksheet_Activate()
If Range("B3") <= Range("B2") - 10 Or Range("B3") >= Range("B2") + 10 Or _
Range("B4") <= Range("B3") - 10 Or Range("B4") >= Range("B3") + 10 Or _
Range("B5") <= Range("B4") - 10 Or Range("B5") >= Range("B4") + 10 Or _
Range("B6") <= Range("B5") - 10 Or Range("B6") >= Range("B5") + 10 Then
MsgBox ("±10円をオーバーしています!")
End If
End Sub
No.1ベストアンサー
- 回答日時:
比較使用するセルが空白でないこと(セルの値<>"")を条件に含めれば良いです。
但し、そうすると今の書き方では、長くなるので、以下のようにしました。Private Sub Worksheet_Activate()
Dim pr As Range
Dim r As Range
Set pr = Range("B2")
For Each r In Range("B3:B6")
If pr.Value <> "" And r.Value <> "" And Abs(pr.Value - r.Value) >= 10 Then
MsgBox ("±10円をオーバーしています!")
Exit For
End If
Set pr = r
Next
End Sub
ご回答いただきありがとうございました。
無事に処理することができました。
こんなシンプルなやり方もあるんですね。勉強になりました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Excelでセル内の一部のみ同じセルを検索し、そのセルと同じ行で任意の列のセルを選択する方法 2 2021/12/17 11:01
- Excel(エクセル) 空白行も含めてソートしたい 3 2022/02/01 23:13
- Visual Basic(VBA) VBAでoutlook365が起動しません。 4 2022/08/25 13:31
- Visual Basic(VBA) 左から空白文字を探して左側を比較する 4 2022/02/02 22:48
- Excel(エクセル) マクロで変数を用いてセルを選択し、そのセル内の数値を計算式に入れる方法 3 2021/12/27 22:59
- Visual Basic(VBA) Excel VBA の Copy,Paste の質問 2 2021/10/19 19:50
- Excel(エクセル) マクロでセル内の文字列と同じ名前ファイルを選択し、コピペする方法 2 2021/12/31 15:15
- Visual Basic(VBA) VBAが止まります。 3 2022/08/31 14:09
- Excel(エクセル) vba userformで漢字を全角カタカナに 2 2022/07/24 15:38
- Visual Basic(VBA) シート名でファイル検索する 2 2021/11/30 17:05
このQ&Aを見た人はこんなQ&Aも見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
Excelの各シートを色ごとで分類して値転記するマクロの作り方を教えて下さい。
Visual Basic(VBA)
-
VisualStudio2022をマクロみたいに自動プログラムを作成する方法を教えてください。
Visual Basic(VBA)
-
エクセルで同じ値が連続しているセルに色をつける方法を教えてください。
Excel(エクセル)
-
-
4
一つのフォルダーに50個のエクセルファイルがあります。 各ファイルにはAとBのシートがあります。 5
Visual Basic(VBA)
-
5
csvファイルを列数ごとに分割するExcelマクロが書けずに困っています
Visual Basic(VBA)
-
6
Excel vba 重複削除、連番に並び替え
Excel(エクセル)
-
7
エクセルのマクロについて教えてください。
Visual Basic(VBA)
-
8
エクセルのマクロについて教えてください。
Visual Basic(VBA)
-
9
Excel マクロについて
Visual Basic(VBA)
-
10
エクセル VBAでの転記の方法について
Visual Basic(VBA)
-
11
エクセルのマクロについて教えてください。
Visual Basic(VBA)
-
12
Excel VBAでの数値の計算についておしえてください
Visual Basic(VBA)
-
13
マクロについて教えてください。 下記のマクロは以前教えて頂いたマクロです。 マクロを実行すると 指定
Visual Basic(VBA)
-
14
エクセルのマクロ
Excel(エクセル)
-
15
ExcelVBAのFindFirstエラーについて
Visual Basic(VBA)
-
16
VBA
Visual Basic(VBA)
-
17
エクセルのマクロについて教えてください。
Visual Basic(VBA)
-
18
VBA UserFormからの転記で
Visual Basic(VBA)
-
19
Excelのマクロについて教えてください。 下記のマクロを実行すると 別ブックに指定セル値をコピーで
Visual Basic(VBA)
-
20
エクセルのマクロについて教えてください。
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel VBA 空白セルがあったら...
-
【VB.NET】DataGridViewセルの...
-
クリップボードの内容を変数に...
-
Excel 入力規則のリストのカー...
-
SPREADで1つのセルに複数のチ...
-
複数セルに〇印をつけるマクロ
-
マウスを乗せたときにセルの色...
-
Excelの数式について教えてくだ...
-
日付だけを変更して印刷(Excel)
-
エクセルで表示形式の時刻の「0...
-
エクセルでの計算式で求められ...
-
エクセルで 何時間何分と表示...
-
Excelで 分:秒 と表示させる...
-
エクセルの「入力規則」のプル...
-
入力後に日付順になるように自...
-
エクセルで文字入力してEnterキ...
-
エクセル:マクロ「Application...
-
【エクセル】関数で「A1が0でな...
-
エクセルのセル内に全角数字を...
-
エクセル 足して割る
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel VBA 空白セルがあったら...
-
Excel VBA コンボボックスで空...
-
Excel 入力規則のリストのカー...
-
マウスを乗せたときにセルの色...
-
複数セルに〇印をつけるマクロ
-
クリップボードの内容を変数に...
-
VBA 別ブックから条件に合うも...
-
マクロについて質問です 範囲内...
-
DataGridViewでセルを結合したい
-
エクセルの取り消し線を検出す...
-
VBA サンダーバードのメール自...
-
GridViewの行選択イベントを発...
-
【VB.NET】DataGridViewセルの...
-
【VBA】セルが空白の場合に処理...
-
Excelマクロで空白セルの大小比...
-
VBA 文字列を1文字ずつ調べて"...
-
VB2005 DATAGRIDVIEWでの矢印キ...
-
エクセル チェックボックスの...
-
SPREADで1つのセルに複数のチ...
-
■EXCEL(二つのセルの文字列を一...
おすすめ情報