| 
    
     |  | >G列のセルに4桁、H列のセルに5桁又は6桁入っています (両方アルファベットと数字の混合) 
 H列は、5 Or 6桁では無く8桁なのですか?
 
 ★1若しくは★2の様に書けば善いのでは
 
 Option Explicit
 
 Public Sub Test()
 
 Dim a As Long
 
 a = 1
 
 Do Until Cells(a, "H").Value = ""
 '『1』の場合:G列のセルの末尾が"H"
 If Cells(a, "G").Value Like "*H" Then
 Cells(a, "O").Value = "1"
 '『4』の場合:にはG列のセルの末尾が"Y"で、さらにH列に"12345"という数字がある場合です
 '(前には4桁あり、後ろには何もないか、1桁あります)
 ElseIf Cells(a, "G").Value Like "*Y" And Cells(a, "H").Value Like "????12345*" Then '★1
 Cells(a, "O").Value = "4"
 '『2』の場合:にはG列のセルの最後が"Y"もしくは"MMX"
 ElseIf Cells(a, "G").Value Like "*Y" Or Cells(a, "G").Value Like "*MMX" Then
 Cells(a, "O").Value = "2"
 '『3』の場合:にはH列のセルに"12345"という数字が
 '(前には4桁あり、後ろには何もないか、1桁あります)
 ElseIf InStr(1, Cells(a, "H").Value, "12345") = 5 Then '★2
 Cells(a, "O").Value = "3"
 '『5』の場合:上記以外のものと、H列の頭にV7、後ろに3桁か4桁あるものです。
 ElseIf Cells(a, "H").Value Like "V7*" Then
 Cells(a, "O").Value = "5"
 Else
 Cells(a, "O").Value = "5"
 End If
 a = a + 1
 Loop
 
 End Sub
 
 |  |