
こんばんは
ある選択範囲でどれか1つのセルに空白があった場合
メッセージを表示させたいのですが、
リスト中に入力された範囲のすべてのセルをチェックしたいのです。
どのようにしたら良いのでしょうか。
A1~A3の範囲のみでしたら下記でよいのかな?と考えてみました。
VBA勉強中なのですが、なかなかうまくいきません。お力をお願い致します。
If IsEmpty(Range("a2:d2").Value) Then
MsgBox "開始時刻が入力されていません。"
Worksheets("Sheet1").Range("a2").Select
No.2ベストアンサー
- 回答日時:
#1です。
>ある選択範囲でどれか1つのセルに空白があった場合
とあるので、調べたい範囲を選択した後、以下を実行しては?
Sub bbb()
Dim sel As Range
For Each sel In Selection
If IsEmpty(sel) Then
MsgBox "開始時刻未入力"
sel.Select
Exit For
End If
Next sel
End Sub
ただ、範囲のすべてのセル、を知りたいということですからちょっと違ってるかもしれませんね。
でも、「チェックしたい」というのはやや曖昧です。どうしたいのでしょうか。
調べたい範囲を選択した上で、以下だったら該当セルだけ選択されます。
Sub ccc()
Dim Rng As Range
Set Rng = Selection
Selection.SpecialCells(xlCellTypeBlanks).Select
Set Rng = Nothing
End Sub
とか。
例えば、調べたい範囲を選択した後で、
Sub ddd()
Dim sel As Range
For Each sel In Selection
If IsEmpty(sel) Then
sel.Interior.ColorIndex = 4
End If
Next sel
ActiveCell.CurrentRegion.Cells(1, 1).Select
End Sub
としとけば空白の欄はとりあえず分かりますが。
(検査後、色を戻すようなことは適宜設定してください)
>リストに入力された値が「n」行、B~F列の場合、
>その入力された行に空白がないかチェックするにはどのようにしたら>良いのでしょうか。
n行はデータを与えないといけないですね。
Sub eee()
Dim Rng As Range
Dim Flg As Boolean
Dim n As Integer, c As Integer
n = InputBox("何行目を検索?")
Flg = False
For c = 2 To 6
If IsEmpty(Cells(n, c)) Then
Cells(n, c).Interior.ColorIndex = 6
Flg = True
End If
Next c
If Flg = True Then MsgBox "開始時刻未入力"
End Sub
n に数字以外が入力された場合のエラー対応など色々細かいこともあるでしょうから適宜対応ください。
No.1
- 回答日時:
範囲は適当ですけど
Sub aaa()
Dim sel As Range
For Each sel In Range("a1:e10")
If IsEmpty(sel) Then
MsgBox "開始時刻未入力"
sel.Select
Exit For
End If
Next
End Sub
とかはどうでしょうか。
この回答への補足
ご説明が不足して申し訳ありません。
リストに入力された値が「n」行、B~F列の場合、
その入力された行に空白がないかチェックするにはどのようにしたら良いのでしょうか。
宜しくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【エクセル】入力規則のプルダ...
-
EXCEL 連動したドロップダウン...
-
名簿の漢字名を関数で半角カナ...
-
オートフィルを列すべて(一番...
-
エクセルで休日の「休」という...
-
EXCELで縦の行全てに一括して文...
-
Excelでセルを次の行の先頭の列...
-
エクセルでエンターを押すと隣...
-
Excelのテーブル上のセルの保護...
-
エクセルで年を1年ずつ増やすや...
-
一つのセル内でVLOOKUPで抽出し...
-
エクセルで、複数の同一内容の...
-
エクセル・真ん中の数字のみイ...
-
Excelにて。 1つのセルの中で同...
-
エクセルで「-3E+06」と...
-
EXCELでタイトル行と一番下の行...
-
【Excel】選択したすべてのセル...
-
エクセルでオートサムを使った...
-
PowerPointの表内のカンマ
-
エクセルで桁を揃えるために0を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCEL 連動したドロップダウン...
-
名簿の漢字名を関数で半角カナ...
-
EXCELで縦の行全てに一括して文...
-
【エクセル】入力規則のプルダ...
-
エクセルで休日の「休」という...
-
Excelでセルを次の行の先頭の列...
-
エクセルでエンターを押すと隣...
-
Excelのテーブル上のセルの保護...
-
Excelで数値をgからkgへ(÷1000)
-
空白部分に連番の数字を記入し...
-
エクセルで決められた合計にな...
-
エクセルで空白に自動で文字を...
-
指定した行に飛ぶ事って可能で...
-
オートフィルを列すべて(一番...
-
Excelで相対度数を求めたいので...
-
エクセルで既存数値を税抜きに...
-
エクセルで行の一番上にセルに...
-
エクセル・真ん中の数字のみイ...
-
エクセルの数式を等間隔にオー...
-
一つのセル内でVLOOKUPで抽出し...
おすすめ情報