Hoe om string en veranderlike in Excel VBA saam te voeg ('n gedetailleerde analise)

  • Deel Dit
Hugh West

Terwyl ons met VBA in Excel werk, moet ons dikwels string(s) en veranderlike(s) in 'n werkblad aaneenskakel. Die samevoeging van string(s) en veranderlike(s) word wyd gebruik in byna al die sektore in ons werke, vanaf die opsomming van die resultate van studente tot die ontleding van 'n komplekse besigheid. In hierdie artikel sal ek jou wys hoe jy string (s) en veranderlike (s) in 'n werkblad met VBA in Excel kan aaneenskakel. Ek sal die dinge met behoorlike voorbeelde en illustrasies verduidelik.

Koppel string(s) en veranderlike(s) in Excel VBA (Quick View)

Laai oefenwerkboek af

Laai hierdie oefenwerkboek af om te oefen terwyl jy hierdie artikel lees.

Koppel string en veranderlike.xlsm

Skakel string(s) en veranderlike(s) aan in Excel VBA (stap-vir-stap-analise)

In die eerste plek, kom ons kyk hoe ons string(s) kan aaneenskakel. en veranderlike(s) in VBA stap vir stap.

⧪ Aaneenskakelende string(e):

Om twee of meer stringe in VBA , kan jy beide die rekenkundige optelling (+) simbool en die ampèreen (& ) simbool gebruik.

Byvoorbeeld, om aaneen te skakel die stringe “Great Expectations” en “A Tale of Two Cities” met 'n komma , kan jy gebruik:

4605

Of,

9870

Laat enige van die bogenoemde kodes hardloop. Dit sal die saamgevoegde uitset, Groot verwagtinge, vertoon,A Tale of Two Cities .

⧪ Aaneenskakelende veranderlike(s)

As al die veranderlikes stringwaardes bevat, dan kan jy beide die rekenkundige optelling (+) simbool en die ampère en (&) simbool gebruik.

Maar as hulle dit nie doen nie, dan kan jy gebruik net die ampersand (&) simbool om aaneen te skakel.

Byvoorbeeld, Kom ons het twee veranderlikes, A en B .

A bevat 'n string, “A Tale of Two Cities” , en B bevat nog 'n string, “The Forty Rules of Love” .

Jy kan beide die optelling (+) simbool en ampère en (&) simbool gebruik om hulle aaneen te skakel.

3569

Of,

9177

In albei gevalle sal hulle die aaneengeskakelde string terugstuur.

Maar as A 'n string is ( “A Tale of Two Cities” ) en B 'n heelgetal is ( 27 ), moet jy die ampersand (&) -simbool gebruik om aaneen te skakel.

4511

Dit sal die aaneengeskakelde uitvoer terugstuur .

Voorbeelde vir Concat stringe en veranderlikes in Excel VBA (wat makro, UDF en UserForm betrek)

Ons het geleer om string(s) en veranderlike(s) met VBA in Excel aaneen te skakel . Hierdie keer sal ons 'n paar voorbeelde ondersoek wat die samevoeging van string(s) en veranderlike(s) met VBA behels.

Voorbeeld 1: Ontwikkel 'n makro om string(s) en veranderlike(s) in Excel VBA

Ons het geleer omvoeg stringe en veranderlikes saam met VBA . Hierdie keer sal ons 'n Makro ontwikkel om stringe en veranderlikes van veelvuldige kolomme in 'n werkblad aaneen te skakel.

Hier het ons 'n datastel met boekname , outeurs , en pryse van sommige boeke van 'n boekwinkel genaamd Martin Bookstore.

Kom ons ontwikkel 'n Makro om kolomme 1, 2, en 3 van die datastel B4:D14 in sel F4 aaneen te koppel.

Die VBA -kode sal wees:

⧭ VBA-kode:

1298

⧭ Uitset :

Laat hierdie kode hardloop. Jy sal die 3 kolomme aaneengeskakel kry in die reeks F4:F14.

Lees meer: ​​Makro na Koppel veelvuldige kolomme in Excel (met UDF en UserForm)

Voorbeeld 2: Skep 'n gebruikergedefinieerde funksie om string(s) en veranderlike(s) in Excel VBA aan te sluit

Ons het geleer om 'n Makro te ontwikkel om veelvuldige kolomme van 'n datastel aaneen te voeg. Hierdie keer sal ons 'n Gebruiker-gedefinieerde funksie skep om stringe of veranderlikes in Excel aaneen te koppel.

Die volledige VBA -kode sal wees:

⧭ VBA-kode:

6310

⧭ Uitvoer:

Kies die kolom waar jy die reeks en voer hierdie formule in:

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

Dit sal Sy, H. Rider Haggard as die uitset terugstuur.

Voer weer die formule in:

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

[ Skikkingsformule . Moet dus nie vergeet niedruk CTRL + SHIFT + ENTER tensy jy in Office 365 is.]

Dit sal 30 aaneenskakel met al die waardes van die reeks B4:B14 .

Voer ten slotte in:

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

[Weereens Skikkingsformule . Moet dus nie vergeet om CTRL + SHIFT + ENTER te druk tensy jy in Office 365 is.]

Dit sal al die waardes van die reeks B4 aaneenskakel: B14 met dié van C4:C14 .

Lees meer: ​​Hoe om aaneen te skakel in Excel (3 geskikte maniere)

Soortgelyke lesings:

  • Hoe om teks van twee of meer selle in een sel in Excel te kombineer (5 metodes)
  • Kombineer rye in een sel in Excel
  • Skakel getalle in Excel aan (4 vinnige formules)
  • Kombineer teks in Excel (8 geskikte maniere)
  • Hoe om apostrof in Excel aaneen te koppel (6 maklike maniere)

Voorbeeld 3: Ontwikkel 'n UserForm om string (s) en veranderlike (s) in 'n ander werkblad in Excel VBA saam te voeg

Ons het geleer om 'n Makro en 'n Gebruikergedefinieerde funksie om stringe en waardes aaneen te koppel. Laastens sal ons 'n Gebruikersvorm ontwikkel om stringe en waardes aaneen te skakel na die verlangde ligging van die verlangde werkblad.

⧪ Stap 1: Voeg die Gebruikersvorm in

Gaan na die Voeg in > UserForm -opsie in die VBA -nutsbalk om 'n nuwe UserForm in te voeg.

⧪ Stap 2: Sleep Gereedskap omdie Gebruikersvorm

'n Gebruikersvorm genaamd Gebruikersvorm1 sal oopgemaak word, saam met 'n Gereedskapkas genaamd Beheer .

Beweeg jou muis oor die e Toolbox en sleep 2 ListBoxes, 5 Text Boxes, 7 Labels and1 Comman Buttons in die UserForm .

Verander die vertonings van die etikette soos in die figuur getoon.

Verander net so die vertoning van die Command Button na OK .

⧪ Stap 3: Skryf kode vir TextBox1

Dubbelklik op TextBox1 . 'n Privaat subprosedure genaamd TeksBox1_Verander sal oopmaak. Voer die volgende kode daar in.

1211

⧪ Stap 4: Skryf kode vir TextBox3

Dubbelklik net so op Teksboks3 . Nog 'n Privaat Subprosedure genaamd TeksBox3_Change sal oopmaak. Tik die volgende kode daar in.

2417

⧪ Stap 5: Skryf kode vir TextBox4

Dubbelklik ook op Teksboks3 . Nog 'n Privaat Subprosedure genaamd TeksBox3_Change sal oopmaak. Tik die volgende kode daar in.

7503

⧪ Stap 6: Skryf kode vir ListBox2

Dubbelklik dan op ListBox2 . Wanneer die Privaat Subprosedure genaamd ListBox2_Click oopmaak, voer hierdie kode daar in.

6934

⧪ Stap 7: Skryf kode vir CommandButton1

Dubbelklik ook op CommandButton1 . Na die Privaat Subprosedure genaamd CommandButton1_Change maak oop, voeg die volgende kode daar in.

3822

⧪ Stap 7: Skryf kode om die Gebruikersvorm te laat loop

Nou is die laaste stap. Voeg 'n nuwe Module van die VBA -nutsbalk in en voeg die volgende kode in.

5616

⧪ Stap 8: Loop die Gebruikersvorm

Jou Gebruikersvorm is nou gereed om te gebruik. Om dit te laat loop, kies die datastel uit die werkblad (Insluitend die Opskrifte ) en hardloop die Makro genaamd Run_UserForm .

Die Gebruikersvorm sal met al die opsies laai. Die geselekteerde reeksadres sal op TeksBox1 gewys word ( B3:D4 hier). As jy wil, kan jy dit verander. Die geselekteerde reeks in die werkblad sal verander.

Kies die kolomme wat jy wil saamvoeg uit die kolomme na Concat ListBox. Hier het ek Boeknaam en Prys gekies.

Voer die Skelder in. Hier het ek 'n komma ( , ) ingevoer.

Kies die werkbladnaam waar jy die aaneengeskakelde reeks wil plaas van die Aangekoppelde in lysboks. Hier het ek Blad3 ingevoer.

(Die oomblik wat jy die blad kies, sal dit geaktiveer word, al is dit nie die aktiewe een nie.)

Voeg dan in die Uitvoerligging . Dit is die selverwysing van die eerste sel van die aaneengeskakelde reeks. Hier het ek B3 gesit.

(Die oomblik wat jy die Uitvoerligging invoer, sal die uitsetreeks gekies word).

En laastens , gaan in dienaam van die Uitvoerkop (Opskrif van die Uitsetreeks). Hier het ek aaneengeskakelde reeks geplaas.

(Die oomblik wat jy die Uitvoerkop plaas, sal die kop van die uitvoerkolom gestel word.)

Klik OK . Jy sal die verlangde uitset op die verlangde plek kry.

Lees meer: ​​Hoe om string en heelgetal saam te voeg met VBA

Gevolgtrekking

Hierdie is dus 'n paar voorbeelde waarin jy Excel VBA kan gebruik om stringe en veranderlikes aaneen te koppel. Hoop die voorbeelde het alles vir jou redelik duidelik gemaak. Het jy enige vrae? Vra ons gerus. En moenie vergeet om ons webwerf ExcelWIKI te besoek vir meer plasings en opdaterings nie.

Hugh West is 'n hoogs ervare Excel-afrigter en ontleder met meer as 10 jaar ondervinding in die bedryf. Hy het 'n Baccalaureusgraad in Rekeningkunde en Finansies en 'n Meestersgraad in Besigheidsadministrasie. Hugh het 'n passie vir onderrig en het 'n unieke onderrigbenadering ontwikkel wat maklik is om te volg en te verstaan. Sy kundige kennis van Excel het duisende studente en professionele persone wêreldwyd gehelp om hul vaardighede te verbeter en uit te blink in hul loopbane. Deur sy blog deel Hugh sy kennis met die wêreld, en bied gratis Excel-tutoriale en aanlyn opleiding aan om individue en besighede te help om hul volle potensiaal te bereik.