プロが教える店舗&オフィスのセキュリティ対策術

A1~A20列にデータを入力していくのですが、セルに値のの入力が無い場合にそのセルの番地(?)を、メッセージBOXで「A**」にデータが入力されていません」というように、警告するようにしたいのですが、入力されていないセルの番地を取得するにはどうしたらよいでしょうか?

A 回答 (6件)

> マクロ実行時にメッセージを出す方法を考えておりました。



merlionXXです。
それなら標準モジュールに以下のように記述してください。

Sub Sample()
On Error GoTo line
myAdr = Sheets("Sheet1").Range("A1:A20").SpecialCells(xlCellTypeBlanks).Address(0, 0)
MsgBox myAdr & " に入力がありません!", vbCritical
line:
End Sub
    • good
    • 0
この回答へのお礼

何度もありがとうございます。
VBAも奥が深いようで、頑張って覚えていこうと思います。
参考にさせていただいて、頑張ってみようと思います。

お礼日時:2009/05/01 16:43

どのシートのA1~A20でしょうか?


どのタイミングでメッセージをだすのでしょうか?
ご記入がないのでSheet1のA1~A20のどれかが空白のまま終了しようとした場合に警告を出すようにします。

VBEでThisWorkbookモジュールに以下をコピペしてみてください。

Private Sub Workbook_BeforeClose(Cancel As Boolean)
On Error GoTo line
myAdr = Sheets("Sheet1").Range("A1:A20").SpecialCells(xlCellTypeBlanks).Address(0, 0)
Cancel = True
MsgBox myAdr & " に入力がありません!", vbCritical
line:
End Sub
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
質問内容にかなり不備が有り申し訳ありません。

マクロ実行時にメッセージを出す方法を考えておりました。

お礼日時:2009/04/29 22:15

こんな感じ?




Sub test()
Dim Rng As Range
Dim NoData As String
For Each Rng In Range("a1:a20")
If Rng.Value = "" Then
If NoData = "" Then
NoData = Rng.Address(0, 0)
Else
NoData = NoData & "," & Rng.Address(0, 0)
End If
End If
Next
If NoData = "" Then Exit Sub
MsgBox NoData & "にデータが入力されていません"
End Sub
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
凄く参考になりました。

お礼日時:2009/04/29 22:01

No.2です!


たびたびごめんなさい。
空白セル番地を取得したいって事なのですね?
VBAだと出来そうな感じですが・・・ちょっと判りません。

セル番地取得までは行きませんが、
B1セルに
=IF(COUNTIF(A1:A20,"")>0,"未入力セルが"&COUNTIF(A1:A20,"")&"箇所あります","")
としてみてはどうでしょうか?

なんか無理矢理って感じですが、
この程度の回答でごめんなさい。m(__)m
    • good
    • 1
この回答へのお礼

セルに書式入れる方法ですね。
今回は使えないのですが、回答ありがとうございました。

お礼日時:2009/04/29 22:05

こんばんは!


私もNo.1さんの回答のように条件付書式を使えばいいと思いました。

A1~A20を範囲指定 → 書式 → 条件付書式 → セル値が 次の値に等しい として
=""  と入力 → 書式 → パターンから塗りつぶしの色を選択してはどうでしょうか?
空白セルのみ色がつくはずです。

当方使用のExcel2003での回答でした。
以上、参考になれば幸いです。m(__)m
    • good
    • 0

A1~A20に条件付き書式を設定


数式が A1="" 書式に塗りつぶしの色を設定
空白の時、塗りつぶしの色をつける。入力されると色が消える
すなわち、入力されていないセルには色が付いている。
    • good
    • 0
この回答へのお礼

素早いお返事ありがとうございます。
そう言う方法もあるのですねぇ今後の参考にさせていただきます。

今回は、メッセージを表示させたいという考えがあるので...

お礼日時:2009/04/29 20:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!