• ベストアンサー

空白セルのメッセージボックスでの知らせるマクロ

はじめまして。下記のExcelについて教えてください。 セルA1からA10の間にデータが入力されているセル、入力されていないセルが混在している場合、データが入力されていないセルをメッセージボックスで知らせるマクロの作成の仕方を教えてください。 空白セルが2つある場合はメッセージボックスは2回表示されます。 ずっと考えていても、分からなくて。。。どうか教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.2

> 空白セルが2つある場合はメッセージボックスは2回表示されます。 空白セルの数だけメッセージを出したいということでしたら Sub test01() Dim c As Range For Each c In ActiveSheet.Range("A1:A10") If c.Formula = "" Then MsgBox c.Address & "が空白です。" End If Next End Sub メッセージボックスが複数回表示されるのが困るという意味なら Sub test02() Dim c As Range Dim i As Long For Each c In ActiveSheet.Range("A1:A10") If c.Formula = "" Then i = i + 1 End If Next MsgBox i & "個が空白です。" End Sub

fukushia
質問者

お礼

丁寧に教えていただき、本当にありがとうございました。 すごく助かりました!!!

その他の回答 (1)

  • marbin
  • ベストアンサー率27% (636/2290)
回答No.1
fukushia
質問者

お礼

とても参考になるサイトを紹介していただき、ありがとうございました。 ご協力いただき本当にありがとうございました。

関連するQ&A

  • エクセルマクロで空白セルをチェックさせたい

    エクセルで記入漏れが無いかチェックするマクロを教えて下さい。 A10~A40まで日付を記入させるのですが、何行記入されるかは不特定です。 それぞれの日付に対応する備考欄C10~C40に、記入が無い場合メッセージボックスで通知するというマクロです。ちなみに空白セルが複数あってもメッセージボックスは1回だけの出現にさせたいです。 初心者なもので行き詰ってしまいました。よろしくお願いします。    A   B   C 10 12/5     ○○ 11 12/6     △△ 12 12/7         ←記入漏れ 13 12/8     ×× 14             ←以下空白

  • エクセルVBAで空白セルを削除する方法

    みなさん教えてください。 今エクセルVBAで、下記のようにのA列に空白セルがある場合にそのセルを削除し、 空白セルが無い場合何もしないと言うマクロを作っています(下記のように自動記録し ました)。 しかし、作成したマクロは、下記のようにA列に空白セルがない場合はエラーが出てし まいます。 空白セルが無い場合エラーが出ない方法を教えて頂けないでしょうか。 よろしくお願いします。 <マクロ> Sub Macro1() Columns("A:A").Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Selection.SpecialCells(xlCellTypeBlanks).Select Application.CutCopyMode = False Selection.Delete Shift:=xlUp End Sub <データ> A --------- 1 2 1 1 1 3 4 ・ ・ ・ (以降約300行続きます)

  • マクロで空白セルに貼り付ける

    エクセルで表を作っていますが、マクロを使って、空白セルの左隣の値をコピーし、空白セルに貼り付けをしたいのですが、うまくいきませんでしたので、教えてください。

  • エクセルで空白セルにコピーする方法を教えてください

    エクセルのデータ加工について質問です。 A1 60 A16 70 A19 50 というように、全部で1万行以上ふきそくにデータがあり、間の行は空白セルです。 それぞれ空白セル、A2からA15は60、A17からA18には70と上にある数値をコピーしたい時に、どのような数式、またはマクロを作成したらよいでしょうか。 宜しくお願い致します。

  • エクセルマクロ 【空白セルを無視する方法を教えてください】

    マクロを独学で学び仕事に応用しているのですが、どうしても分からないことが発生してしまい、質問です。 内容は、今、エクセルシートのA1~B5の範囲で A B 1 1 1 2 1 2 3 4 1 5 1 という形で入力されています(見難くてスミマセン)。 この状態から「A列とB列に同じ数字が入力されてれば、メッセージBOXを表示して、なおかつOKボタンを押したら該当セルを赤くする」というマクロを作りたいのですが、本来であれば1行目のみ赤くなるはずなのですが、空白セルが含まれている3行目も赤くなってしまうんです。つまり、空白セルも「同じ値」と認識されているみたいなのですが...。 この場合、空白セルを無視するにはどうしたらよいのですか?教えてください。なお、マクロは以下のように作っています。 Sub ナンバーチェック() Dim Btn As Integer For X = 5 To 10 If Cells(X, "A").Value = Cells(X, "B").Value Then  Btn = MsgBox("同じ数値です", vbOK, "警告")  If Btn = vbOK Then   Cells(X, "A").Interior.ColorIndex = 3 Cells(X, "B").Interior.ColorIndex = 3 End If End If Next End Sub

  • エクセルのマクロ(指定列の空白にひとつ上の文字を入力し続ける)

    エクセルのマクロを教えてください。 指定列の空白にひとつ上の文字を入力し続けるマクロです。 A列指定 A2からスタートし、1000行くらいあるデータ 空白があった場合ひとつ上の文字を入力 空白は、2行連続・3行連続となることもあるが大抵は1行空白 この場合、空白セルの上で一番近いデータをコピーする A列のデータは、文字・数字・日付と様々 1000行ある場合もあるが、それ以下の場合もあるので、10行空白が続いたらマクロが自動的に終了 エクセル2003使用 よろしくお願いいたします。

  • エクセルでセルが変更されたらメッセージボックス表示するマクロ

    あるセル範囲、たとえばA1:B10の範囲に0以外の数字が入力されたらメッセージボックスで 「0以外の数字が入力されました。このまま続けますか?(はい)(いいえ)」 と表示させるマクロを作りたいのですが、どうすれば良いでしょうか。 (いいえ)が選択されたらそのセルへの入力はキャンセルさせたいのですが。 過去ログなどをみてもいまひとつやり方がわからないのでお願いします。

  • 入力したセル番地をメッセージボックスで表示する方法

    Excelでメッセージボックスの使い方についてお聞きします。 下記のコードを実行します。その時、メッセージボックス上に入力したセル番地(A1)、「こんにちは」という語句をそれぞれ表示させるにはどのような方法があるのでしょうか。 宜しくお願いします。 Range("A1").Value = "こんにちは"

  • マクロで空白セルをNULLという文字に置き換えたい

    はじめまして。 初投稿します。 エクセルのマクロは初心者です。 早速質問ですが、 空白セルを'NULL'という文字列に置き換えたいのです。 その空白セルは複数あり、扱うデータの行の中にランダムで 空白のセルがある状態です。IF関数にて処理する場合、 どのように処理すればよいのでしょうか。 わかりづらい文章かと思いますが、よろしくお願い致します。

  • マクロ 空白セルへの文字入力

    A列が空白となるまでB列のとこどころに数字が入力されていて空白のセルへ0を入力する。 というマクロがどうしてもできないのですが、ご教示お願いします。

専門家に質問してみよう