Excel har allerede en TRIM -regnearkfunksjon som du kan bruke til å bli kvitt ledende, etterfølgende og ekstra mellomrom mellom ord/strenger.
Det er også en TRIM -funksjon i VBA (og den gjør nøyaktig det samme - fjern ekstra mellomrom).
Hvorfor trenger vi en TRIM -funksjon i VBA også?
Greit spørsmål!
Mens du kan jobbe med den innebygde TRIM -funksjonen i Excel -regneark for å bli kvitt mellomrom. i noen tilfeller må du kanskje gjøre dette ved hjelp av VBA.
Dette kan være en del av en større kode.
Syntaks for VBA TRIM -funksjonen
TRIM (streng)
'String' er argumentet som kan være en tekststreng eller en variabel som inneholder en tekststreng.
La oss lære hvordan du bruker VBA TRIM -funksjonen med et par eksempler.
Eksempel 1 - Viser resultat i en meldingsboks
Anta at du har følgende tekst i celle A1
Vær oppmerksom på at det er mellomrom før og etter setningen.
Koden nedenfor vil ta denne setningen og vise resultatet etter å ha trimmet de ekstra mellomrommene
Sub TrimExample1 () MsgBox Trim (Range ("A1")) End Sub
Anta for eksempel at du har følgende tekst i celle A1 (med ekstra mellomrom mellom ord):
Hvis jeg bruker ovennevnte VBA -kode, vil den vise en meldingsboks som vist nedenfor:
Som du kan se i meldingsboksen, blir ikke de ekstra mellomrommene mellom ord fjernet av VBA TRIM -funksjonen.
Hva er da alternativet?
Hvis du vil fjerne ledende, etterfølgende, samt doble mellomrom mellom ord, er det bedre å bruke følgende kode:
Sub TrimExample1 () MsgBox WorksheetFunction.Trim (Range ("A1")) End Sub
Koden ovenfor bruker regneark -TRIM -funksjonen (i stedet for å bruke TRIM -funksjonen i VBA).
Merk: VBA Trim -funksjon fjerner ikke tegnene som ikke er mellomrom - for eksempel nye linjer (vbNewLine, vbCrLf) etc.
Eksempel 2 - Fjern ledende og etterfølgende mellomrom raskt fra en rekke celler
Anta at du har et datasett som vist nedenfor der det er ledende og etterfølgende mellomrom:
Du kan bruke koden nedenfor for å umiddelbart rense disse dataene og fjerne alle de ledende og etterfølgende mellomrom:
Sub TrimExample1 () Dim Rng As Range Set Rng = Selection for each Cell In Rng Cell.Value = Trim (Cell) Next Cell End Sub
Koden ovenfor går gjennom alle cellene i utvalget og fjerner de ledende og etterfølgende mellomrommene.
Du kan også like følgende Excel/VBA -opplæringsprogrammer:
- 10 måter å rense data i Excel.
- Excel VBA delt funksjon.
- Excel VBA InStr -funksjon.
- VBA LCase -funksjon.
- VBA UCase -funksjon.
- Opprette en brukerdefinert funksjon (UDF) i Excel VBA.