VBA TRIM

Excel VBA TRIM-funktion

VBA TRIM är kategoriserad under sträng- och textfunktionerna, den här funktionen är en kalkylfunktion i VBA och liknar kalkylbladets referens den här funktionen används för att trimma eller ta bort oönskade utrymmen från en sträng, det tar ett enda argument som är en inmatningssträng och returnerar en utdata som en sträng.

Det finns flera situationer där vi laddar ner data från onlineservrar och vi möter en situation med oorganiserad data och oönskade utrymmen i cellen. Att hantera onödiga utrymmen är mycket smärtsamt att arbeta med. I vanliga kalkylbladfunktioner har vi en funktion som heter TRIM i Excel för att bli av med "Ledande utrymmen, bakre utrymmen och mellanrum" . I VBA har vi också en funktion som heter TRIM som fungerar exakt samma som excel-funktionen men det finns bara en liten skillnad där, vi kommer att se det i den här artikeln lite senare.

Vad gör trimfunktionen?

TRIM är en strängfunktion som tar bort mellanslag i excel från den valda cellen. I utrymmen har vi tre typer ”Leading Spaces, Trailing Spaces, and in-between space” .

Ledande utrymme är ingenting men innan något värde börjar i cellen om det finns något utrymme kallas det ledande utrymme.

Släputrymme är inget annat än efter slutet av värdet i cellen om det finns något utrymme kallas det som släputrymme.

Mellanrummet är ingenting efter slutet av varje ord, helst borde vi ha ett mellanslagstecken, något mer än ett mellanslag kallas Mellanrummet.

För att övervinna alla dessa problem har vi en funktion som heter TRIM.

Syntax

Sträng: Vad är strängen eller värdet du vill trimma? Det kan vara cellreferens såväl som en direkt tillförsel av värde till formeln.

Exempel

Du kan ladda ner den här VBA TRIM-funktionsmallen här - VBA TRIM-funktionsmallen

Exempel nr 1

Nu ska vi se hur man tar bort ledande utrymmen i Excel med TRIM-funktionen. Följ stegen nedan

Steg 1: Skapa ett makronamn och förklara en variabel som sträng.

Koda:

 Sub Trim_Example1 () Dim k Som strängänd Sub 

Steg 2: Tilldela nu ett värde för denna deklarerade variabel med hjälp av TRIM.

Koda:

 Sub Trim_Example1 () Dim k As String k = Trim (End Sub 

Steg 3: För denna sträng skriver du ordet i dubbla citat som "Välkommen till VBA".

Koda:

 Sub Trim_Example1 () Dim k As String k = Trim ("Welcome to VBA") End Sub 

Steg 4: Visa nu resultatet av denna variabel i meddelandefältet.

Koda:

 Sub Trim_Example1 () Dim k As String k = Trim ("Welcome to VBA") MsgBox k End Sub 

Steg 5: Kör den här koden med F5-tangenten eller kör manuellt, vi borde få en rätt sträng i meddelandefältet.

Produktion:

Så, TRIM-funktionen tog bort alla ledande mellanslag som vi har angett till strängvärdet. Nu är resultatet en korrekt mening, dvs. ”Välkommen till VBA” .

Exempel 2

Ta nu en titt på ytterligare ett exempel för att ta bort efterföljande utrymmen. Ta samma ord men den här gången ange efterföljande mellanslag.

“Välkommen till VBA”.

Koda:

 Sub Trim_Example2 () Dim k As String k = Trim ("Welcome to VBA") MsgBox k End Sub 

Kör den här koden manuellt eller genom F5-tangenten Trim-funktionen tar också bort efterföljande utrymmen.

Produktion:

Exempel # 3 - Rengör data i celler

Nu kommer vi att se det praktiska exemplet på rengöring av data i excel-celler. Antag att du har en datamängd som nedan på ditt excel-ark.

När vi har mer än en celldata måste vi skriva olika koder. Följ stegen nedan för att skriva kod.

Steg 1: Förklara en variabel som "Range".

Koda:

 Sub Trim_Example3 () Dim MyRange As Range End Sub 

Steg 2: Eftersom områdesdatatyp är ett objekt måste vi först ställa in intervallet. Så ställ in intervallet som "urval".

Koda:

 Sub Trim_Example3 () Dim MyRange As Range Ställ in MyRange = Selection End Sub 

Obs! MyRange = Selection betyder att oavsett vilka celler jag väljer blir ett intervall. Så inom det intervallet tar TRIM bort oönskade utrymmen.

Steg 3: Använd nu För varje VBA-slinga tillämpa TRIM-funktionen.

Koda:

 Sub Trim_Example3 () Dim MyRange As Range Ställ in MyRange = markering för varje cell i MyRange cell.Värde = Trim (cell) Nästa End Sub 

Steg 4: Gå nu tillbaka till kalkylbladet. Gå in och rita en rektangulär form.

Steg 5: Lägg till ett ord i den infogade rektangulära formen som klicka här för att rengöra data.

Steg 6: Högerklicka på den rektangulära formen och välj tilldela makro.

Steg 7: Nu öppnas rutan för makronamn. Välj namnet på det makro vi just skapade. Klicka på Ok.

 

Steg 8: Välj nu det område där vi behöver rengöra data.

Steg 9: När du har valt intervall klickar du på den tilldelade makro rektangulära rutan. Det kommer att rensa data.

Så vi fick rengörat värde, dvs. efter att ha tagit bort ledande och bakre utrymmen.

Skillnaden mellan Excel och VBA-trimfunktion

The only difference between them is VBA function cannot remove in between spaces while the worksheet function in VBA does. For example, take a look at the below example.

In cell A3 we have in-between spaces, if select and click on the rectangular shape it will only remove trailing & leading spaces, not in-between spaces.

To overcome this problem we need to use the trim function as a worksheet function in the code.

Code:

 Sub Trim_Example3() Dim MyRange As Range Set MyRange = Selection For Each cell In MyRange cell.Value = WorksheetFunction.Trim(cell) Next End Sub 

Here we have used worksheet function not a vba function. This will remove all kinds of spaces.

Things to Remember

  • VBA Trim & Worksheet Trim syntax is exactly the same.
  • It can only remove leading & trailing spaces, not in-between spaces.
  • Excel trim function can remove all kinds of spaces.