色々、調べてみたら過去にこんなのをやっていました。
(元データ)
C列
目黒区下目黒1丁目
渋谷区渋谷3丁目
品川区品川1丁目
上記のようなデータがC列に210個あって、下記のように1丁目とか数字の部分で分けたいという処理についてです。
(結果データ)
G列 H列
目黒区下目黒 1丁目
渋谷区渋谷 1丁目
品川区品川 1丁目
Sub 丁目で分ける()
Dim s As String
Dim c As Long
Dim ik As Long
For ik = 1 To 210
s = Range("C" & ik).Value
For c = 1 To Len(s)
If isnumeric(Mid(s, c, 1)) Then
Debug.Print c & "文字目でした"
Exit For
End If
Next
Range("G" & ik).Value = Left(s, c - 1)
Range("H" & ik).Value = Mid(s, c)
Next
End Sub
つまり数字(この場合だったら、変数のc)を見つけてしまえば、あとは不要です。
このExit For のネタ少し引っ張ります。