Poniżej przyjrzymy się programowi w Excel VBA że oddziela struny.
Sytuacja:
Umieść przycisk polecenia w arkuszu i dodaj następujące wiersze kodu:
1. Najpierw deklarujemy zmienną o nazwie fullname typu String, zmienną o nazwie commaposition typu Integer oraz zmienną o nazwie i typu Integer.
Dim imię i nazwisko As String, przecinek As Integer, i As Integer
Problem, z którym mamy do czynienia, polega na tym, że musimy powiedzieć Excelowi VBA, gdzie chcemy oddzielić ciąg. W przypadku Smitha, Mike przecinek znajduje się na pozycji 6, podczas gdy w przypadku Williamsa, Janet przecinek znajduje się na pozycji 9.
2. Używamy pętli do wykonania operacji na każdej nazwie wprowadzonej w Excelu. Najpierw inicjujemy zmienną fullname. Następnie używamy funkcji Instr, aby znaleźć pozycję przecinka.
Dla i = 2 do 7
imię i nazwisko = Komórki(i, 1)).Wartość
przecinek = InStr(pełna nazwa, ",")
3. Na koniec chcemy zapisać część po przecinku w kolumnie B i część przed przecinkiem w kolumnie C. Możesz to osiągnąć, dodając wiersze:
Komórki(i, 2)).Value = Mid(pełna nazwa, przecinek + 2)
Cells(i, 3)).Value = Left(pełna nazwa, przecinek - 1)
Mid(pełne imię, przecinek + 2) oznacza, że chcemy, aby część pełnego imienia zaczynała się od znaku „przecinek + 2” (to jest dokładnie imię).
Left(pełne imię, przecinek - 1) oznacza, że chcemy, aby część imienia i nazwiska zaczynała się od początku do znaku 'przecinek-1' (jest to dokładnie nazwisko).
4. Nie zapomnij zamknąć pętli.
Dalej ja
5. Dodaj sześć nazw oddzielonych przecinkiem i spacją do zakresu ("A2:A7").
6. Przetestuj program.
Wynik: