>違う文字列をヒットさせてしまうので、止まらないのです。
なるほどー
エラーが捕捉できないのか、誤ヒットなのか切り分けができないので、
取り敢えず以下のコードを実行してみてください。
1.Msgboxに何と出ますか?(イミディエイトウィンドウにも出ます)
2.どのステートメントで止まりますか?(それとも、またしても止まらないですか?)
Sub test()
Dim rc, sch, myColumns, i12, i13, msg
With Sheets("出品")
rc = .Cells(3, Columns.Count).End(xlToLeft).Column
sch = "external_product_id"
myColumns = WorksheetFunction.Match(sch, Range(.Cells(3, 1), .Cells(3, rc)), 0)
i12 = myColumns
sch = "external_product_id_typ"
myColumns = WorksheetFunction.Match(sch, Range(.Cells(3, 1), .Cells(3, rc)), 0)
i13 = myColumns
myColumns = WorksheetFunction.HLookup(sch, Range(.Cells(3, 1), .Cells(3, rc)), 1, False)
msg = i12 & "列目 " & i13 & "列目 " & myColumns & IIf(sch = myColumns, " 同じ", " 異なる")
Debug.Print msg
MsgBox msg
myColumns = WorksheetFunction.Match("%&$", Range(.Cells(3, 1), .Cells(3, rc)), 0)
MsgBox myColumns
End With
End Sub