Vba: jak podzielić ciąg na tablicę (z przykładem)
Aby podzielić ciąg na tablicę za pomocą języka VBA, możesz użyć następującej podstawowej składni:
SubSplitString ()
Dim SingleValue() As String
Dim i As Integer
Dim j As Integer
For i = 2 To 7
SingleValue = Split(Range(" A " & i), " ")
For j = 1 To 2
Cells(i, j + 1).Value = SingleValue(j - 1)
Next j
Next i
End Sub
Ten konkretny przykład dzieli każdy ciąg w zakresie A2:A7 na podstawie spacji w każdym ciągu, a następnie przypisuje wynikowe elementy każdego ciągu do zakresów komórek B2:B7 i C2:C7 .
Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.
Przykład: użycie języka VBA do podzielenia ciągu na tablicę
Załóżmy, że mamy następującą listę ciągów w Excelu:
Załóżmy, że chcemy podzielić każdy ciąg znaków na podstawie białych znaków, a następnie przypisać powstałe elementy każdego ciągu do nowych komórek.
W tym celu możemy utworzyć następujące makro:
SubSplitString ()
Dim SplitValues() As String
Dim i As Integer
Dim j As Integer
For i = 2 To 7
SplitValues = Split(Range(" A " & i), " ")
For j = 1 To 2
Cells(i, j + 1).Value = SplitValues(j - 1)
Next j
Next i
End Sub
Kiedy uruchomimy to makro, otrzymamy następujące dane wyjściowe:
Należy pamiętać, że kolumny B i C zawierają imię i nazwisko każdego pełnego imienia i nazwiska w kolumnie A.
Pamiętaj również, że możesz użyć funkcji Split VBA, aby podzielić tablicę na podstawie innego ogranicznika.
Załóżmy na przykład, że mamy następującą listę e-mailową:
Załóżmy, że chcemy podzielić każdy e-mail na tablicę w oparciu o miejsce pojawienia się symbolu @ .
W tym celu możemy utworzyć następujące makro:
SubSplitString ()
Dim SplitValues() As String
Dim i As Integer
Dim j As Integer
For i = 2 To 7
SplitValues = Split(Range(" A " & i), " @ ")
For j = 1 To 2
Cells(i, j + 1).Value = SplitValues(j - 1)
Next j
Next i
End Sub
Kiedy uruchomimy to makro, otrzymamy następujące dane wyjściowe:
Funkcja Podziel dzieli każdą wiadomość e-mail w kolumnie A na podstawie symbolu @ i wyświetla wynikowe elementy w kolumnach B i C.
Uwaga : Pełną dokumentację funkcji VBA Split znajdziesz tutaj .
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania przy użyciu języka VBA:
VBA: Jak liczyć wystąpienia znaków w ciągu
VBA: jak sprawdzić, czy ciąg zawiera inny ciąg
VBA: Jak liczyć komórki zawierające określony tekst