| 
    
     |  | いつもご回答ありがとうございます。 せっかくINAさんの教えてくれた物を使って見たのですがエラーが出ます・・・・
 何か間違っていますでしょうか?
 Sub 規則()
 For j = 1 To 17
 Select Case j
 Case 1 To 10
 If Mid(Len(Target.Value) <> 10, j, 1) Then
 'ここで判別
 MsgBox "10桁で入力していますか?"
 End If
 
 Case 11 To 11
 If Mid(IMEMode = xlIMEModeKatakanaHalf, j, 1) Then
 Else: MsgBox "半角カナで11桁目は入力してください"
 End If
 
 Case 12 To 15
 '文字数
 If Mid(Len(Target.Value) <> 4, j, 1) Then
 MsgBox "4文字入力してください"
 End If
 
 '1文字ずつASCIコードでチェック
 For k = 1 To 4
 If Asc(Mid(Target.Value, k, 1)) >= 48 And _
 Asc(Mid(Target.Value, k, 1)) <= 57 Then
 Else
 MsgBox "0〜9 以外の文字が入力されています。"
 End If
 Next k
 
 Case 16 To 17
 If Mid("00", j, 1) Then
 Else
 MsgBox "16桁〜17桁目は、00を入力してください"
 End If
 End Select
 Next j
 
 End Sub
 
 |  |