Excel VBA-sammenkædning

Sammenkædning kan defineres som sammenføjning eller tilføjelse af to strenge eller dataelementer for at få en enkelt streng eller dataelement kaldes sammenkædning. Med enkle ord, hvis vi har en liste med fornavne i en kolonne og efternavn i en anden kolonne ved hjælp af sammenhængende operation, kan vi kombinere begge og placere i en enkelt celle inden for en brøkdel af sekunder. I Excel har vi en regnearkfunktion kaldet Concat () for at opnå denne sammenkædning . Men denne form for funktion er ikke tilgængelig i VBA. Vi kan ikke bruge sammenhængende () i VBA-kodning, da det ikke vil fungere. Så der er ingen tilgængelige funktioner i VBA og kan ikke få adgang til regnearkets funktioner også, så hvordan vi sammenkæder to eller flere strenge i VBA.

Først vil vi se, hvordan vi gør det med regnearkfunktionen, så vil vi se det samme i VBA. Overvej to strenge i Excel som vist i nedenstående skærmbillede.

Brug nu sammenkædede funktion til at kombinere begge strengene.

Overhold formlen, D4 og E4 er adressen på de celler, vi vil kombinere. Som ovenfor kan vi sammenkæde flere antal strenge fra forskellige celler.

Hvordan bruges Excel VBA Concatenate-funktion?

Vi lærer, hvordan man bruger en VBA-sammenkædning med få eksempler i Excel.

Du kan downloade denne VBA Concatenate Excel-skabelon her - VBA Concatenate Excel Template

VBA Concatenate - Eksempel # 1

Da vi ikke har nogen indbyggede funktioner i VBA, kan sammenkædning i VBA opnås ved hjælp af ampersand (&) -operatør.

Vi vil tage det samme eksempel, som vi allerede tog til regnearkfunktionen. Vi har "Jeg elsker" i celle D4 og "Indien" i celle E4. Nu vil vi kombinere de to strenge i VBA. Gå til fanen VBA-editor.

Trin 1: Gå til fanen Udvikler, og vælg derefter fanen “visual basic” i venstre side. Derefter går det til nedenstående skærm.

Trin 2: Først skal vi oprette en underproces med ethvert navn som sammenkædning . For at starte underprocessen skal du bruge nøgleordet Sub og procesnavnet "sammenkædning".

Kode:

 Sub Concatenate () End Sub 

Trin 3: I underprocesser er vi nødt til at definere strenge som streng1, streng2 og full_streng ved hjælp af nøgleordet dim.

Kode:

 Sub Concatenate () Dim String1 Som streng Dim String2 Som streng Dim full_string Som streng End Sub 

Trin 4: Nu skal vi tildele strengen “Jeg elsker” til streng1 og “Indien” til streng2 ved hjælp af “=” tildelingsoperatør som nedenfor.

Kode:

 Sub Concatenate () Dim String1 As Streng Dim String2 Som streng Dim full_string As String String1 = "Jeg elsker" String2 = "Indien" End Sub 

Trin 5: Nu skal du kombinere string1 og string2 vha. Ampersand operator og tildele denne kombination til full_string som nedenfor. Hold et mellemrum mellem strengvariabler og ampersand operator for at undgå fejlmeddelelse.

Kode:

 Subkoncatenat () Dim String1 Som streng Dim String2 Som streng Dim full_string Som streng String1 = "Jeg elsker" String2 = "Indien" full_string = String1 & String2 End Sub 

Trin 6: Nu gemmes sammenkædning af både streng1 og streng2 i fuld_streng. Vis denne streng ved hjælp af en meddelelsesboks som nedenfor.

Kode:

 Subkoncatenat () Dim String1 Som streng Dim String2 Som streng Dim full_string Som streng String1 = "Jeg elsker" String2 = "Indien" full_string = String1 & String2 MsgBox (full_string) End Sub 

Trin 7: Nu er det tid til at udføre processen. Klik på afspilningsknappen, der er markeret med rød farveboks. Resultatet vises i meddelelsesfeltet som nedenfor.

Trin 8: I ovenstående eksempel tog vi de to strenge direkte i programmet, og der er ikke noget mellemrum mellem den første streng og den anden streng. Hvordan tilføjes plads derefter? Meget enkel, mens du sammenkæder, også sammenkædet plads.

Kode:

 Subkoncatenat () Dim String1 Som streng Dim String2 Som streng Dim full_string Som streng String1 = "Jeg elsker" String2 = "Indien" full_string = String1 & "" & String2 MsgBox (full_string) End Sub 

Trin 9: Se ovenstående billede, vi tilføjede mellemrummet mellem streng1 og streng2 ved hjælp af dobbeltcitater. Hvis vi ønsker at tilføje '-', kan vi også gøre det.

Kode:

 Subkoncatenat () Dim String1 Som streng Dim String2 Som streng Dim full_string Som streng String1 = "Jeg elsker" String2 = "Indien" full_string = String1 & "-" & String2 MsgBox (full_string) End Sub 

Trin 10: Resultatet vil være som nedenfor.

VBA Concatenate - Eksempel # 2

Trin 1: Nu vil vi tage dataene fra excelarket og sammenkæde og derefter vise resultater. Til dette tildeles dataene i cellerne til streng1 og streng2 som vist nedenfor.

Kode:

 Sub Concatenate2 () Dim String1 As Streng Dim String2 Som streng Dim full_string Som strengstreng1 = Celler (4, 4) .Value String2 = Cells (4, 5) .Value MsgBox (full_string) End Sub 

Trin 2: Observer ovenstående billede, vi tildelte værdien i celler (4, 4) til stirng1 og celler (4, 5) i streng2. Som normalt sammenkæder begge strenge vha. Ampersand-operatøren.

Kode:

 Sub Concatenate2 () Dim String1 As Streng Dim String2 Som streng Dim full_string Som streng String1 = Celler (4, 4) .Value String2 = Cells (4, 5) .Value full_string = String1 & "" & String2 MsgBox (full_string) End Sub 

Trin 3: På grund af dette vil dataene i celler (4, 4) og celler (4, 5) uanset om de kombineres og opbevares i fuldstreng. Udfør nu processen ved at klikke på play symbol.

Trin 4: Dataene henter fra excel vist nedenfor.

Trin 5: Hvis vi ændrer dataene i excel og kører igen, ændres programresultaterne pr. Excel-data. I stedet for Indien skiftede jeg til slik, nu skal vi løbe og tjekke.

Trin 6: Nu kommer resultatet i meddelelsesfeltet. I stedet for en meddelelsesboks, hvis vi ønsker at udmærke sig selv, kan vi gøre det.

Kode:

 Sub Concatenate2 () Dim String1 Som Streng Dim String2 Som streng Dim full_string Som strengstreng1 = Celler (4, 4) .Value String2 = Cells (4, 5) .Value Cells (4, 7) .Value = String1 & String2 MsgBox ( full_string) End Sub 

Trin 7: Tildel sammenkædningen i celleadressecelle (4, 7) og fjern msgbox, da vi ikke længere har brug for en meddelelsesboks. Tryk på play-knappen og gå til dig excel, og kontroller, at resultatet bliver celle (4, 7) (række 4 og kolonne 7).

Trin 8: Når vi tilføjer to strenge, kan vi bruge “+” -symbolet også som nedenfor.

Kode:

 Sub Concatenate2 () Dim String1 Som streng Dim String2 Som streng Dim full_string Som String String1 = Celler (4, 4) .Value String2 = Cells (4, 5) .Value Cells (4, 7) .Value = String1 + String2 End Sub 

Trin 9: Resultatet vil være som nedenfor. Der vil ikke være nogen forskel.

Trin 10: Men hvis vi bruger tal i stedet for strenge til at sammenkæde ved hjælp af “+” -symbolet, udfører den sammenkædning kun ikke tilføjelse, fordi vi tog datatypen som en streng, ikke et heltal.

Trin 11: Resultatet vil være som nedenfor.

I tilfælde af at vi tager datatypen som heltal, skal vi kun bruge ampersand-operatør til sammenkædning. Hvis vi bruger "+", mens vi tager heltal datatype, samles det ikke, men udfører tilføjelse.

VBA Concatenate - Eksempel # 3

Trin 1: Hvis vi også ønsker at kombinere en streng og et nummer, kan vi anvende den samme teknik. For at beholde nummerværdien i en celle og strengværdien i en anden celle og klikke på køremuligheden.

Trin 2: Resultatet har ikke indflydelse, det vil være det samme strengresultat som tidligere med den eneste ændring er nummer i stedet for en streng.

Ting at huske

  • Sammenkædning er at kombinere strengene i to eller flere multiple strenge af forskellige celler. For at udføre dette i Excel har vi indbygget regnearkfunktion, der er CONCAT.
  • Arbejdsarkfunktion konkat er ikke tilgængelig i VBA til sammenkobling.
  • Sammenkædning opnås ved hjælp af operatørens ampersand (&) og plus (+). Hvis du tager heltal datatype, udfører “+” symbolet additionsoperation i stedet for sammenkædning, og sørg derfor for det.
  • Brug plads før og efter symbolerne & og + ellers kaster det en fejlmeddelelse.
  • Når du definerer strengvariabler, skal du ikke gemme nogen plads i et variabelnavn. Hvis der findes et mellemrum, der findes i strengvariablenavn, tillader det ikke, da det kaster fejlmeddelelse som nedenfor.

Anbefalede artikler

Dette er en guide til VBA Concatenate. Her diskuterer vi, hvordan du bruger Excel VBA Concatenate-funktion sammen med praktiske eksempler og downloadbar excel-skabelon. Du kan også gennemgå vores andre foreslåede artikler -

  1. VBA InStr forklaret med eksempler
  2. VBA heltal datatype
  3. Hvordan vælger du celle ved hjælp af VBA-kode?
  4. Transponér et interval i VBA

Kategori: