U kunt logica uitvoeren op of afzonderlijke tekens retourneren uit een tekenreeks in VBA door de tekenreeks te doorlopen.
Loop door elk teken in een string
Het volgende is een voorbeeld van het doorlopen van een string met behulp van een For… Next Loop, en het retourneren van elk teken in een msgbox.
1234567891011121314 | Sub LoopThroughString()Gedimde teller als geheel getalDim MyString als stringMyString = "AutomateExcel" 'definieer tekenreeks'Voor Teller = 1 Tot Len (MyString)'doe iets met elk teken in string''Hier sturen we elk personage een bericht'MsgBox Mid(MyString, Teller, 1)VolgendeEinde sub |
De Len-functie telt het totale aantal tekens in de string. Dus de uitdrukking
1 | Voor Teller = 1 tot Len (MyString |
doorloopt elke letter in de string.
Loop door elk teken in een string - alternatief
Lees elk karakter in een string
: Dit voorbeeld leest elk teken in een tekenreeks van links naar rechts en retourneert het resultaat in een berichtvenster. Het maakt gebruik van de midden functie.
12345678910111213 | Sub LoopThroughString()Dim LookInHere As StringGedimde teller als geheel getal'Gebruik hier je eigen tekstLookInHere = "easyexcel.net"Voor Teller = 1 Tot Len (Kijk Hier)MsgBox Mid(Kijk InHier, Teller, 1)VolgendeEinde sub |
Lees elk woord in een string
In dit voorbeeld wordt elk woord in een tekenreeks van links naar rechts gelezen en wordt het resultaat in een berichtvenster geretourneerd. Het maakt gebruik van de Splitsen functie.
1234567891011121314151617 | Sub LoopThroughString2()Dim LookInHere As StringGedimde teller als geheel getalDim SplitCatcher als variant'Gebruik hier je eigen tekstLookInHere = "I Heart easyexcel.net"SplitCatcher = Split(Kijk InHier, " ")Voor Teller = 0 Naar UBound (SplitCatcher)MsgBox SplitCatcher (teller)VolgendeEinde sub |