具体的なフォーマット(様式)が指定されていないので想定ですが。
最下のVBAコードと入れ替えてください。
■設定及び使用方法
(1)コード内の以下の『'◆チェック対象の設定』箇所を変更してください。
(添付画像の設定ですと以下のようになります。項目は増やせます)
'チェック対象とする範囲を設定
Set myRng = Range("B2:B15")
'チェック行半角カンマ「,」で区切って対象の行番号を設定
myRow = Split("8,9,10,15", ",")
'項目名を半角カンマ「,」で区切って上記チェック行に対応する順番で設定
myTit = Split("氏名,住所,年齢,生年月日", ",")
(2)「入力チェック」マクロを実行してください。
チェック対象のセルに未入力があれば、結果がダイアログで表示されます。
■VBAコード
Sub 入力チェック()
'◇型宣言
Dim myRng As Range
Dim myTit As Variant, myRow As Variant
Dim i As Long, cnt As Integer
Dim msg As String
Dim myTar As Range
'◆チェック対象の設定
'チェック範囲
Set myRng = Range("B2:B15")
'チェック行
myRow = Split("8,9,10,15", ",")
'項目名
myTit = Split("氏名,住所,年齢,生年月日", ",")
'◇チェック処理
'行ループ
For i = 1 To myRng.Count
'チェック項目ループ
For j = 0 To UBound(myRow)
'チェック対象且つ、未入力時処理
If myRng(i).Row = CInt(myRow(j)) And Len(myRng(i).Text) = 0 Then
If myTar Is Nothing Then
Set myTar = myRng(i)
Else
msg = msg & vbCrLf
Set myTar = Union(myTar, myRng(i))
End If
msg = msg & "・" & myTit(j)
cnt = cnt + 1
End If
Next j
Next i
'◇結果表示
If Not myTar Is Nothing Then
myTar.Select
MsgBox "以下の項目が記入されていません。" & vbCrLf & msg, vbOKOnly, "入力必須項目が未記入です"
End If
End Sub
お礼
ありがとうございます。 補足を投稿後、あーでもないこーでもない…としてみました。 「変数の強制を宣言する」のチェックを外して、Option Explicitを削除しましたところできました!!! ありがとうございます。 早速明日、頑張ってみます。
補足
ありがとうございます。コピーして貼り付けてみたのですが… 「変数が定義さていません」と「Sub 入力チェック()」の部分が黄色になります。 今は、家のパソコンで「eden3616さま」と同じ表を作って試してみました。 私が何かやらかしているのでしょうか? すいません。 よろしくお願いいたします。