Excel VBA TRIM -funksjon (forklart med eksempler)

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

Det er en viktig ting å vite når du bruker TRIM -funksjonen i VBA - den fjerner bare de ledende og etterfølgende mellomrommene. Det fjerner ikke de ekstra mellomrommene mellom ord (som den innebygde TRIM-funksjonen i regnearket gjør).

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.
wave wave wave wave wave