Združevanje VBA | Kako združiti nize skupaj v VBA?

Združevanje pomeni združevanje dveh vrednosti ali dveh nizov skupaj, podobno kot excel, ki ga uporabljamo & ali pa je tudi znano kot operater ampersand za združevanje, dva združuje dva niza, ki ga uporabljamo & operator, kot sta String 1 in String 2, zdaj je treba zapomniti pomembno stvar in to je, medtem ko uporabljamo operator &, moramo zagotoviti presledke, ali pa ga bo VBA upošteval tako dolgo.

Strukturirani nizi VBA

VBA Concatenate je ena tistih stvari, ki smo jih uporabljali za kombiniranje dveh ali več vrednosti celic vrednosti, če v preprostem jeziku povem, da združuje dve ali več vrednosti, da ima polno vrednost.

V Excelu imamo funkcijo CONCATENATE, ki bo združevala dve ali več vrednosti ali dve ali več vrednosti celic skupaj.

Toda v VBA nimamo nobene vgrajene funkcije za združitev dveh ali več vrednosti skupaj. Pravzaprav niti ne pridemo do razreda funkcije delovnega lista, da bi dostopali do funkcije VBA CONCATENATE kot funkcije delovnega lista.

Kako združiti nize v VBA?

Če nimamo kakršne koli vgrajene funkcije za združevanje vrednosti in celo funkcija delovnega lista ni integrirana z VBA. Zdaj je izziv, kako združiti vrednote?

Čeprav vgrajenih funkcij še vedno ni, lahko v VBA kombiniramo s simbolom »&«.

Če redno spremljate naše objave, pri kodiranju pogosto uporabimo znak & (&).

Če imate na primer ime in priimek ločeno, lahko to dvoje združimo in naredimo kot polno ime. Sledite spodnjim korakom za samostojno pisanje kode VBA.

1. korak: Pojdite v urejevalnik Visual Basic in ustvarite podproceduro VBA.

2. korak: Določite tri spremenljivke kot niz .

Koda:

 Sub Concatenate_Example () Dim First_Name As String Dim First_Name As String Dim Full_Name As String End Sub 

3. korak: Zdaj spremenljivki dodelite ime in priimek .

Koda:

 Sub Concatenate_Example () Dim First_Name kot niz Dim Last_Name kot niz Dim Full_Name kot niz First_Name = "Sachin" Last_Name = "Tendulkar" End Sub 

4. korak: Zdaj združite ti dve imeni s spremenljivko polno ime s spremenljivko ampersand.

Koda:

 Sub Concatenate_Example () Dim First_Name kot niz Dim Last_Name kot niz Dim Full_Name As String First_Name = "Sachin" Last_Name = "Tendulkar" Full_Name = First_Name & Last_Name End Sub 

5. korak: Zdaj v polju za sporočilo prikažite vrednost spremenljivke Full_Name .

Koda:

 Sub Concatenate_Example () Dim First_Name kot niz Dim Last_Name kot niz Dim Full_Name Kot niz First_Name = "Sachin" Last_Name = "Tendulkar" Full_Name = First_Name & Last_Name MsgBox Full_Name End Sub 

Zdaj zaženite kodo, v polje za sporočilo bomo dobili polno ime.

Težava s tem polnim imenom je, da nismo dodali prostora za znake za ločilo imena in priimka, medtem ko kombiniramo ime in priimek, združimo tudi znak za presledek.

Koda:

 Sub Concatenate_Example () Dim First_Name kot niz Dim Last_Name kot niz Dim Full_Name As String First_Name = "Sachin" Last_Name = "Tendulkar" Full_Name = First_Name & "" & Last_Name MsgBox Full_Name End Sub 

To bo zdaj dobilo pravilno polno ime.

Tako kot s pomočjo znaka ampersand lahko združimo vrednosti. Zdaj bomo problem delovnega lista rešili skupaj z imenom in priimkom, da bo postalo polno ime.

Ker moramo združiti veliko imen, moramo uporabiti zanke za kombiniranje imena in priimka. Spodnja koda bo opravila delo namesto vas.

Koda:

 Sub Concatenate_Example1 () Dim i kot celo število za i = 2 do 9 celic (i, 3) .Vrednost = Celice (i, 1) & "" & Celice (i, 2) Naprej i Konec Sub 

To bo združilo ime in priimek, tako kot naša funkcija združevanja VBA.

Pogosta napaka v združitvi Ampersand in VBA

Če opazite moje kode, sem dodal presledek med vrednostmi in znakom &. To je bistvenega pomena zaradi narave programiranja VBA.

Vrednosti in simbolov & znakov ne moremo kombinirati skupaj, sicer bomo dobili napako prevajanja, kot je prikazano spodaj.

VBA združite s funkcijo JOIN

V VBA lahko za združevanje vrednosti uporabimo funkcijo JOIN. Najprej si oglejte sintakso funkcije VBA JOIN.

  • Polje ni nič drugega kot polje, ki vsebuje naše vrednosti. Na primer ime in priimek.
  • Ločilo ni nič drugega kot ločilo med vsako vrednostjo matrike, v tem primeru presledkom.

Spodnja koda bo prikazala primer istega.

Koda:

 Sub Concatenate_Example2() Dim MyValues As Variant Dim Full_Name As String MyValues = Array("Sachin", "Tendulkar") Full_Name = Join(MyValues, " ") MsgBox Full_Name End Sub