Excel VBA TRIM funkcija (objašnjeno s primjerima)

Excel već ima funkciju radnog lista TRIM pomoću koje se možete riješiti vodećih, zadnjih i dodatnih razmaka između riječi/nizova.

I u VBA postoji funkcija TRIM (i radi potpuno istu stvar - uklanja dodatne prostore).

Zašto nam je potrebna funkcija TRIM i u VBA -i?

Pošteno pitanje!

Iako možete raditi s ugrađenom funkcijom TRIM u radnim listovima programa Excel kako biste se riješili prostora. u nekim slučajevima možda ćete to morati učiniti pomoću VBA.

To bi mogao biti dio većeg koda.

Sintaksa funkcije VBA TRIM

TRIM (niz)

"Niz" je argument koji može biti tekstualni niz ili varijabla koja sadrži tekstualni niz.

Naučimo kako koristiti funkciju VBA TRIM s nekoliko primjera.

Primjer 1 - Prikaz rezultata u okviru za poruku

Pretpostavimo da imate sljedeći tekst u ćeliji A1

Imajte na umu da postoje razmaci prije i iza rečenice.

Kôd u nastavku uzeo bi ovu rečenicu i prikazao rezultat nakon skraćivanja dodatnih razmaka

Sub TrimExample1 () MsgBox Trim (raspon ("A1")) Kraj Sub

Postoji jedna važna stvar koju morate znati kada koristite funkciju TRIM u VBA - to će ukloniti samo početne i krajnje razmake. Neće ukloniti dodatne razmake između riječi (što čini ugrađena funkcija TRIM na radnom listu).

Na primjer, pretpostavimo da imate sljedeći tekst u ćeliji A1 (s dodatnim razmacima između riječi):

Ako koristim gornji VBA kôd, prikazat će se okvir s porukom kao što je prikazano u nastavku:

Kao što možete vidjeti u rezultatima okvira s porukom, dodatni razmaci između riječi nisu uklonjeni funkcijom VBA TRIM.

Koja je onda alternativa?

Ako želite ukloniti vodeće, zadnje i dvostruke razmake između riječi, bolje je koristiti sljedeći kôd:

Sub TrimExample1 () MsgBox radni list Funkcija.Trim (raspon ("A1")) Kraj pod

Gornji kôd koristi TRIM funkciju radnog lista (umjesto da koristi funkciju TRIM u VBA).

Napomena: Funkcija VBA Trim ne uklanja znakove koji nisu razmaci - poput novih redaka (vbNewLine, vbCrLf) itd.

Primjer 2 - Brzo uklonite početne i zadnje razmake iz raspona ćelija

Pretpostavimo da imate skup podataka kao što je prikazano u nastavku gdje postoje vodeći i krajnji razmaci:

Pomoću donjeg koda možete odmah očistiti ove podatke i ukloniti sve vodeće i krajnje razmake:

Sub TrimExample1 () Dim Rng As Range Set Rng = Odabir za svaku ćeliju u Rng ćeliji. Vrijednost = Obrezivanje (ćelija) Sljedeća ćelija Kraj Sub

Gornji kôd prolazi kroz sve ćelije u odabiru i uklanja početne i krajnje razmake.

Možda će vam se svidjeti i sljedeći Excel/VBA vodiči:

  • 10 načina za čišćenje podataka u Excelu.
  • Excel VBA Split funkcija.
  • Excel VBA InStr funkcija.
  • VBA LCase funkcija.
  • VBA UCase funkcija.
  • Stvaranje korisnički definirane funkcije (UDF) u Excelu VBA.
wave wave wave wave wave