Nedenfor ser vi på et program i Excel VBA at skiller strenger.
Situasjon:
Plasser en kommandoknapp på regnearket og legg til følgende kodelinjer:
1. Først erklærer vi en variabel som kalles fullnavn av typen String, en variabel som kalles kommaposisjon av typen Heltall, og en variabel som heter i av typen Heltall.
Dim fullnavn As String, commaposition As Integer, i As Integer
Problemet vi har å gjøre er at vi må fortelle Excel VBA hvor vi vil skille strengen. I tilfelle av Smith, er Mike komma på posisjon 6, mens for Williams er Janet komma på posisjon 9.
2. Vi bruker en loop for å utføre operasjonene på hvert navn som er angitt i Excel. Først initialiserer vi variabelen fullnavn. Deretter bruker vi Instr -funksjonen for å finne posisjonen til kommaet.
For i = 2 til 7
fullnavn = Celler (i, 1) .Value
commaposition = InStr (fullnavn, ",")
3. Til slutt vil vi skrive delen etter kommaet til kolonne B og delen foran kommaet til kolonne C. Du kan oppnå dette ved å legge til linjene:
Celler (i, 2) .Value = Midt (fullnavn, kommaposisjon + 2)
Celler (i, 3) .Value = Venstre (fullnavn, kommaposisjon - 1)
Midt (fullnavn, kommaposisjon + 2) betyr at vi vil at delen av fullnavnet starter med tegnet 'kommaposisjon + 2' (dette er nøyaktig fornavnet).
Venstre (fullnavn, kommaposisjon - 1) betyr at vi vil at delen av fullnavnet starter i begynnelsen til tegnet 'kommaposisjon -1' (dette er nøyaktig etternavnet).
4. Ikke glem å lukke sløyfen.
Neste jeg
5. Legg til seks navn atskilt med komma og mellomrom til område ("A2: A7").
6. Test programmet.
Resultat: