när du arbetar i VBA, behöver du ofta konvertera strängar till gemener, versaler eller korrekt fall. Detta är möjligt genom att använda funktionerna UCase, LCase och StrConv.
dessa funktioner är viktiga när man manipulerar strängar i VBA, eftersom VBA är skiftlägeskänslig. Om du vill göra VBA skiftlägeskänslig måste du lägga till alternativ jämför Text högst upp i din modul. Du kan läsa mer om detta här: Förhindra VBA skiftlägeskänslig
UCase-konvertera sträng till versaler
ucase-funktionen i VBA konverterar alla bokstäver i en sträng till versaler. Det finns bara ett argument, som kan vara en sträng, variabel med sträng eller ett cellvärde. Denna funktion används ofta om du vill jämföra två strängar. Här är koden för UCase-funktionen:
1
2
3
4
5
6
7
8
|
Dim strText som sträng
Dim strTextUCase som sträng
strText = ”kör versaler funktion”
strTextUCase = UCase (strText)
MsgBox strTextUCase
|
i exemplet vill vi konvertera alla bokstäver i strText-variabeln till versaler och tilldela den konverterade strängen till strTextUCase-variabeln. I slutet kallar vi meddelanderutan med den konverterade strängen:
Bild 1. Använda UCase-funktionen i VBA
LCase – konvertera sträng till gemener
om du vill konvertera alla bokstäver i en sträng till lägre fall måste du använda lcase-funktionen. Denna funktion har ett argument, samma som UCase. Detta är koden för LCase-funktionen:
1
2
3
4
5
6
7
8
|
Dim strText som sträng
Dim strTextLCase som sträng
strText = ”kör små bokstäver”
strTextLCase = LCase (strText)
MsgBox strTextLCase
|
i det här exemplet konverterar vi alla bokstäver i strängen från A1 till små bokstäver. Därefter tilldelas den konverterade strängen till cellen A1.
bild 2. Använda lcase-funktionen i VBA
StrConv-konvertera sträng till rätt Fall
StrConv-funktionen gör att du kan konvertera en textsträng till rätt fall. Funktionen har två argument. Först är strängen som du vill konvertera. Den andra är den typ av konvertering som du vill ha. För att konvertera en sträng till ett korrekt fall måste du ställa in det på vbProperCase. Koden för funktionen är:
1
2
3
4
5
6
7
8
|
Dim strText As String
Dim strTextProperCase As String
strText = ”running proper case function”
strTextProperCase = StrConv(strText, vbProperCase)
MsgBox strTextProperCase
|
You will see on the example how the function works. Det tar strängen från cellen B1, omvandlar den till rätt fall och returnerar värdet i cellen A1.
Bild 3. Använda StrConv-funktionen i VBA
StrConv-konvertera sträng till stora eller små bokstäver
med StrConv-funktionen kan du också konvertera en sträng till övre eller nedre fall. För att göra detta behöver du bara ställa in det andra argumentet till vbUpperCase eller vbLowerCase:
1
|
strTextConverted = StrConv (strText, vbUpperCase)
|
1
|
strTextConverted = StrConv (strText, vbLowerCase)
|
VBA övre, nedre och korrekta Fall – Fallfunktioner i Access
alla ovanstående exempel fungerar exakt samma i Access VBA som i Excel VBA.
1
2
3
4
|
Private Sub ClientName_AfterUpdate ()
’detta konverterar texten i rutan Klientnamn till versaler
Me.ClientName = UCase (Mig.Kundnamn)
slut Sub
|