Kako spojiti niz i varijablu u Excel VBA (detaljna analiza)

  • Podijeli Ovo
Hugh West

Dok radimo s VBA u Excelu, često moramo spajati nizove i varijable na radnom listu. Spajanje nizova i varijabli naširoko se koristi u gotovo svim sektorima u našim radovima, počevši od sumiranja rezultata učenika do analize složenog poslovanja. U ovom ću vam članku pokazati kako možete spojiti nizove i varijable na radnom listu pomoću VBA u Excelu. Objasnit ću stvari odgovarajućim primjerima i ilustracijama.

Spojite niz (s) i varijable (s) u programu Excel VBA (Brzi pregled)

Preuzmite radnu bilježnicu za vježbanje

Preuzmite ovu radnu bilježnicu za vježbanje kako biste vježbali dok čitate ovaj članak.

Spojite niz i varijablu.xlsm

Spajanje nizova i varijabli u programu Excel VBA (analiza korak po korak)

Prvo, da vidimo kako možemo spojiti nizove i varijable(e) u VBA korak po korak.

⧪ Spajanje nizova(a):

Za spajanje dva ili više nizova u VBA , možete koristiti i aritmetički simbol zbrajanja (+) i simbol ampersand (& ).

Na primjer, za ulančavanje nizove “Great Expectations” i “A Tale of Two Cities” sa zarezom , možete koristiti:

8691

Ili,

3102

Pokrenite bilo koji od gornjih kodova. Prikazat će spojeni izlaz, Velika očekivanja,Priča o dva grada .

⧪ Povezivanje varijabli

Ako sve varijable sadrže vrijednosti niza, onda možete koristiti i aritmetički simbol zbrajanja (+) i ampersand (&) simbol.

Ali ako ne, onda možete koristiti samo znak & (&) za spajanje.

Na primjer, imajmo dvije varijable, A i B .

A sadrži niz, “Priča o dva grada” , a B sadrži drugi niz, “Četrdeset pravila ljubavi” .

Možete koristiti i simbol zbrajanja (+) i ampersand (&) simbol da ih povežete.

2699

Ili,

8178

U oba slučaja, vratit će spojeni niz.

Ali ako je A niz ( “ Priča o dva grada” ) i B je cijeli broj ( 27 ), morate koristiti simbol ampersand (&) za ulančavanje.

7189

Vratit će ulančani izlaz .

Primjeri za Concat enate Strings and Variables in Excel VBA (Uključuje Macro, UDF i UserForm)

Naučili smo spojiti nizove i varijable s VBA u Excelu . Ovaj put ćemo istražiti neke primjere koji uključuju ulančavanje nizova i varijabli s VBA .

Primjer 1: Razvoj makronaredbe za ulančavanje nizova i varijable(e) u Excelu VBA

Naučili smoulančavanje nizova i varijabli s VBA . Ovaj put ćemo razviti Makro za spajanje nizova i varijabli višestrukih stupaca na radnom listu.

Ovdje imamo skup podataka s nazivima knjiga , autori i cijene nekih knjiga knjižare Martin Bookstore.

Razvijmo Makro za spajanje stupaca 1, 2, i 3 skupa podataka B4:D14 u ćeliji F4 .

VBA kod će biti:

⧭ VBA kod:

9523

⧭ Izlaz :

Pokrenite ovaj kod. Dobit ćete 3 stupce spojene u rasponu F4:F14.

Pročitajte više: Makro za Spajanje više stupaca u Excelu (s UDF-om i korisničkim obrascem)

Primjer 2: Stvaranje korisnički definirane funkcije za spajanje nizova i varijabli u programu Excel VBA

Naučili smo razviti Makro za spajanje više stupaca skupa podataka. Ovaj put ćemo stvoriti Korisnički definiranu funkciju za spajanje nizova ili varijabli u Excelu.

Kompletan VBA kod bit će:

⧭ VBA kod:

3300

⧭ Izlaz:

Odaberite stupac u koji želite spojiti raspon i unesite ovu formulu:

=ConcatenateValues("She","H. Rider Haggard",", ")

Vratit će Ona, H. Rider Haggard kao izlaz.

Ponovo unesite formulu:

=ConcatenateValues(B4:B14,30,", ")

[ Formula polja . Stoga ne zaboravitepritisnite CTRL + SHIFT + ENTER osim ako niste u Office 365 .]

Spojit će 30 sa svim vrijednostima raspona B4:B14 .

Na kraju unesite:

=ConcatenateValues(B4:B14,C4:C14,", ")

[Opet Formula polja . Stoga ne zaboravite pritisnuti CTRL + SHIFT + ENTER osim ako niste u Office 365 .]

Spojit će sve vrijednosti raspona B4: B14 s onima od C4:C14 .

Pročitajte više: Kako spajati u Excelu (3 prikladna načina)

Slična čitanja:

  • Kako kombinirati tekst iz dvije ili više ćelija u jednu ćeliju u programu Excel (5 metoda)
  • Kombinirajte retke u jednu ćeliju u Excelu
  • Spojite brojeve u Excelu (4 brze formule)
  • Kombinirajte tekst u Excelu (8 prikladnih načina)
  • Kako spojiti apostrof u Excelu (6 jednostavnih načina)

Primjer 3: Razvijanje Korisnički obrazac za spajanje nizova i varijabli u različitim radnim listovima u programu Excel VBA

Naučili smo razviti Makro i Korisnički definiran funkcija za spajanje nizova i vrijednosti. Na kraju ćemo razviti Korisnički obrazac za spajanje nizova i vrijednosti na željenu lokaciju željenog radnog lista.

⧪ Korak 1: Umetanje korisničkog obrasca

Idite na Umetni > Opcija UserForm na alatnoj traci VBA za umetanje novog UserForm .

⧪ Korak 2: Povlačenje Alati zakorisnički obrazac

Otvorit će se Korisnički obrazac pod nazivom Korisnički obrazac1 , zajedno s Kutijom s alatima pod nazivom Kontrola .

Pomaknite miš preko kutije s alatima i povucite 2 okvira s popisom, 5 okvira s tekstom, 7 oznaka i 1 gumb za naredbe u korisničkom obrascu .

Promijenite prikaze oznaka kao što je prikazano na slici.

Slično, promijenite prikaz CommandButton u OK .

⧪ Korak 3: Pisanje koda za TextBox1

Dvaput kliknite na TextBox1 . Otvorit će se Privatna potprocedura pod nazivom TextBox1_Change . Unesite sljedeći kod tamo.

8780

⧪ Korak 4: Pisanje koda za TextBox3

Slično, dvaput kliknite na TextBox3 . Otvorit će se još jedna privatna potprocedura pod nazivom TextBox3_Change . Unesite sljedeći kod tamo.

3819

⧪ Korak 5: Pisanje koda za TextBox4

Također, dvaput kliknite na TextBox3 . Otvorit će se još jedna privatna potprocedura pod nazivom TextBox3_Change . Tamo unesite sljedeći kod.

2073

⧪ Korak 6: Pisanje koda za ListBox2

Zatim dvaput kliknite na ListBox2 . Kada se otvori Privatna potprocedura pod nazivom ListBox2_Click , unesite ovaj kod tamo.

8573

⧪ Korak 7: Pisanje koda za CommanButton1

Također, dvaput kliknite na CommandButton1 . Nakon Privatne potprocedure pod nazivom CommandButton1_Change otvara, tamo umetnite sljedeći kod.

3726

⧪ Korak 7: Pisanje koda za pokretanje korisničkog obrasca

Sada je posljednji korak. Umetnite novi Modul iz alatne trake VBA i umetnite sljedeći kod.

1709

⧪ Korak 8: Pokretanje korisnički obrazac

Vaš korisnički obrazac sada je spreman za korištenje. Da biste ga pokrenuli, odaberite skup podataka s radnog lista (uključujući Zaglavlja ) i pokrenite Makro pod nazivom Run_UserForm .

Korisnički obrazac će se učitati sa svim opcijama. Odabrana adresa raspona bit će prikazana na TextBox1 ( B3:D4 ovdje). Ako želite, možete ga promijeniti. Odabrani raspon na radnom listu će se promijeniti.

Odaberite stupce koje želite spojiti iz Columns to Concat ListBox. Ovdje sam odabrao Naziv knjige i Cijenu .

Unesite Razdjelnik . Ovdje sam unio zarez ( , ).

Odaberite naziv radnog lista gdje želite staviti spojeni raspon iz Spojeno u popisni okvir. Ovdje sam unio Sheet3 .

(U trenutku kada odaberete list, on će se aktivirati, čak i ako nije aktivan.)

Zatim umetnite Lokacija izlaza . To je referenca ćelije prve ćelije ulančanog raspona. Ovdje sam stavio B3 .

(U trenutku kada uđete u Output Location , izlazni raspon će biti odabran).

I na kraju , Uđinaziv Izlaznog zaglavlja (Zaglavlje izlaznog raspona). Ovdje sam stavio Concatenated Range .

(Onog trenutka kada stavite Output Header , zaglavlje izlaznog stupca bit će postavljeno.)

Kliknite U redu . Dobit ćete željeni izlaz na željenoj lokaciji.

Pročitajte više: Kako spojiti niz i cijeli broj pomoću VBA

Zaključak

Ovo je nekoliko primjera u kojima možete koristiti Excel VBA za povezivanje nizova i varijabli. Nadam se da su vam primjeri sve razjasnili. Imate li kakvih pitanja? Slobodno nas pitajte. I ne zaboravite posjetiti našu stranicu ExcelWIKI za više postova i ažuriranja.

Hugh West vrlo je iskusan Excel trener i analitičar s više od 10 godina iskustva u industriji. Diplomirao je računovodstvo i financije te magistrirao poslovno upravljanje. Hugh ima strast za podučavanjem i razvio je jedinstveni pristup podučavanju koji je lako pratiti i razumjeti. Njegovo stručno poznavanje programa Excel pomoglo je tisućama studenata i profesionalaca diljem svijeta da poboljšaju svoje vještine i postignu uspjeh u karijeri. Putem svog bloga, Hugh dijeli svoje znanje sa svijetom, nudeći besplatne vodiče za Excel i online obuku kako bi pomogao pojedincima i tvrtkama da dostignu svoj puni potencijal.