/ / Excelマクロ:文字 "XX"が文字列の途中にある場合は、その時点で文字列を分割します - Excel、VBA、for-loop、split

Excelマクロ:文字「XX」が文字列の中央にある場合、その点で文字列を分割する - Excel、VBA、for-Loop、Split

文字列内の特定の文字を見つけることに基づいて、列を2つの列に分割しようとしています。

具体的には、ColumnAにストリング "XX"が含まれている場合は、ColumnDの "XX"の前のすべてをコピーし、 "XX"とその後のすべてをColumnFにコピーします。

Sub splitit()
Dim i As Long, l As Long
l = Cells(Rows.Count, 1).End(xlUp).Row
For i = l To 1 Step -1
If InStr(Cells(i, 1).Value, celltxt, " XX ") Then
Cells(i, 4).Value = Left(Cells(i, 1).Value, Find(" XX ", Cells(i, 1).Value) - 1)
Cells(i, 6).Value = " XX " & Mid(Cells(i, 1).Value, Find(" XX ", Cells(i, 1).Value) + 1, Len(Cells(i, 1).Value))
End if
Next i
End Sub

回答:

回答№1は0
Sub splitit()
Dim i As Long, l As Long,
Dim x as variant
l = Cells(Rows.Count, 1).End(xlUp).Row
For i = l To 1 Step -1
If InStr(Cells(i, 1).Value, celltxt, "XX") <> 0 Then
x = split(cells(i,1),"XX")
cells(i,4) = x(0)
cells(i,6) = " XX " & x(1)
End if
Next i
End Sub