Turinys
"Excel" programoje konkatenavimas - tai dviejų eilučių sujungimas į vieną eilutę. Paprasčiau tariant, jei turime lentelę, kurios viename stulpelyje yra vardai, o kitame - pavardės, galime naudoti konkatenavimo procedūrą, kad per sekundės dalį juos sujungtume ir sujungtume į vieną ląstelę. "Excel" programoje yra funkcija, vadinama CONCATENATE () kuris leidžia mums atlikti šį sugretinimą. Tačiau VBA , tokio tipo funkcija neleidžiama. Negalime naudoti CONCATENATE () VBA kodą, nes jis neveiks. Nes VBA nėra integruotų funkcijų ir negalime naudoti skaičiuoklės funkcijų. Taigi, šioje pamokoje jums bus parodyta, kaip naudoti VBA "Excel" sujungti kelias ląsteles, stulpelius ir eilutes.
Atsisiųsti praktikos sąsiuvinį
Atsisiųskite šį pratybų sąsiuvinį ir atlikite pratimus, kol skaitysite šį straipsnį.
VBA Concatenate Function.xlsmĮvadas į VBA funkciją "Concatenate
Kaip jau minėjome, "Excel" neturi jokios integruotos VBA funkcijos "Concatenate", tačiau mes galime padaryti ją veikiančią kaip funkciją, sujungdami skirtingas eilutes su operatoriais. Čia mes naudojame ampersand. (& amp;) kaip mūsų operatorius.
⟴ Sintaksė
String1 = " Pirmasis tekstas"
String2 = " Antrasis tekstas"
⟴ Grąžinama vertė
Return_value = String1 & String2
4 skirtingi VBA funkcijos "Concatenate" naudojimo būdai programoje "Excel
Čia taikysime 4 skirtingus metodus konkatenavimo procesui atlikti. Taikysime skirtingus operatorius kartu su VBA kodą, kad tai pasiektumėte.
1. Naudokite "Ampersand" (&) operatorių ląstelėms sujungti VBA programoje "Concatenate
Kaip parodyta toliau pateiktoje ekrano kopijoje, turime dviejų stulpelių duomenų rinkinį, kurio viename stulpelyje yra vardai, o kitame - pavardės. Sujungę šiuos du stulpelius, dabar galime gauti visus vardus. nes VBA neturi jokių integruotų konkatenacijos metodų, todėl naudosime ampersandą (& amp;) operatorius, kaip nurodyta toliau pateiktose instrukcijose.
1 žingsnis:
- Pirmiausia paspauskite Alt + F11 atidaryti Makroįjungtas darbalapis.
- Tada spustelėkite
- Pasirinkite Modulis .
2 žingsnis:
- Norėdami sujungti dvi ląsteles į vieną, nukopijuokite ir įklijuokite VBA
Sub Concatenate2() Dim String1 As String Dim String2 As String Dim full_string As String String String1 = Cells(5, 2).Value String2 = Cells(5, 3).Value Cells(5, 5).Value = String1 & String2 MsgBox (full_string) End Sub
Čia,
- String1 = Cells(5, 2).Value pirmosios ląstelės vieta B5 , eilutė 5, ir stulpelis 2 .
- String2 = Cells(5, 3).Value yra antrosios ląstelės vieta C5 , eilutė 5, ir stulpelis 3 .
- Cells(5, 5).Value = String1 & String2 rezultatų ląstelės vieta E5 , eilutė 5 ir stulpelis 5 .
- String1 & String2 yra dvi eilutės, sujungtos amperandu (& amp;)
3 veiksmas:
- Išsaugokite ir paspauskite F5 paleisti programą.
Todėl rezultatą gausite E5 dabartinio darbalapio ląstelę.
4 veiksmas:
- Atlikite ir pakartokite veiksmus likusioms ląstelėms ir gaukite rezultatus, kaip parodyta toliau pateiktame paveikslėlyje.
Skaityti daugiau: Kaip naudoti VBA StrComp programoje "Excel" (5 dažniausiai pasitaikantys pavyzdžiai)
2. Naudokite pliuso (+) operatorių ląstelėms sujungti VBA programoje "Concatenate
Kaip aprašyta ankstesniame skyriuje, mes naudojome amperą (& amp;) operatorius sujungti ląstelių eilutes. Tą patį rezultatą galite gauti taikydami pliuso (+) ženklas vietoj ampersando (& amp;) operatorius. Norėdami tai padaryti, atlikite šiuos veiksmus.
1 žingsnis:
- Atidaryti Makro "Excel" programoje paspauskite Alt + F11 .
- Spustelėkite Įdėkite ir pasirinkite
- Atidarę programos puslapį, įklijuokite VBA
Sub Concatenate2() Dim String1 As String Dim String2 As String Dim full_string As String String String1 = Cells(5, 2).Value String2 = Cells(5, 3).Value Cells(5, 5).Value = String1 + String2 MsgBox (full_string) End Sub
Čia,
- Cells(5, 5).Value = String1 + String2 yra ši eilutė, kurią naudojame plius (+) ženklas vietoj ampersando (& amp;)
2 žingsnis:
- Įkėlę įrašykite ir paspauskite F5 paleisti programą. Todėl pamatysite, kaip pasikeitė ląstelės E5 .
- Norėdami gauti galutinius rezultatus, užpildykite reikiamus langelius dar kartą atlikdami ankstesnius veiksmus.
Skaityti daugiau: Kaip naudoti VBA StrConv funkciją (5 pavyzdžiai)
Panašūs skaitiniai:
- Kaip iškviesti "Excel" VBA subkomandą (4 pavyzdžiai)
- Vertės grąžinimas VBA funkcija (ir masyvo, ir ne masyvo vertės)
- Kaip naudoti VBA funkciją DIR programoje "Excel" (7 pavyzdžiai)
- VBA UCASE funkcijos naudojimas programoje "Excel" (4 pavyzdžiai)
- Kaip naudoti InStr funkciją VBA (3 pavyzdžiai)
3. Kelių stulpelių pridėjimas naudojant VBA Concatenate
Ankstesniuose dviejuose metoduose aptarėme, kaip sujungti du langelius. Tačiau jei norime tai taikyti visam stulpeliui, pridėjimas po vieną užtruks ilgai. Išmokysime jus, kaip pridėti kelis stulpelius ištisai naudojant VBA kodą.
1 žingsnis:
- Pirma, atidaryti Makro paspauskite Alt + F11
- Pasirinkite Modulis iš Įdėkite skirtukas
- Tada įklijuokite šiuos įrašus VBA
Sub ConcatCols() "sujungti stulpelius B & amp; C į E stulpelį Dim LastRow As Long With Worksheets("Sheet3") LastRow = .Cells(.Rows.Count, "B").End(xlUp).Row With .Range("E5:E" & LastRow) .Formula = "=B5& C5" .Value = .Value End With End With End With End Sub
Čia,
- Su darbalapiais ("Lapas3") yra dabartinis darbalapio pavadinimas.
- LastRow = .Cells(.Rows.Count, "B").End(xlUp).Row yra pirmojo stulpelio pavadinimas.
- Su .Range("E5:E" & amp; LastRow) yra rezultato grąžinimo langelių diapazonas.
- .Formula = "=B5&C5" yra formulė, skirta prijungti pirmąją diapazono ląstelę.
2 žingsnis:
- Galiausiai išsaugokite ir paspauskite F5 paleisti programą.
Rezultatai bus pateikiami tik stulpelyje.
Skaityti daugiau: Kaip naudoti VBA Rnd programoje "Excel" (4 metodai)
4. Kelių eilučių sujungimas naudojant VBA Concatenate
Be kelių stulpelių pridėjimo, taip pat galime taikyti VBA Kaip parodyta toliau pateiktoje ekrano kopijoje, norime sujungti tris eilutes į vieną. Norėdami sujungti eilutes, atlikite toliau nurodytus paprastus veiksmus.
1 žingsnis:
- Aktyvinimui Makro "Excel" programoje paspauskite Alt + F11 .
- Tada pasirinkite Modulis iš Įdėkite
- Norėdami sujungti eilutes, įklijuokite VBA
Sub vba_concatenate() Dim rng As Range Dim i As String Dim SourceRange As Range Set SourceRange = Range("B5:D5") For Each rng In SourceRange i = i & rng & " " Next rng Range("B8").Value = Trim(i) End Sub
Čia,
- Set SourceRange = Range ("B5:D5") yra šaltinio ląstelės diapazonas.
- Range("B8").Value = Trim(i) yra grįžtančios ląstelės numeris.
2 žingsnis:
- Galiausiai išsaugokite programą ir paspauskite F5 paleisti.
Taigi galutinis trijų eilučių sujungimo rezultatas bus rodomas ląstelėje B8 .
Skaityti daugiau: Kaip paslėpti viršutines eilutes "Excel" programoje (7 metodai)
Išvada
Apibendrinant, tikiuosi, kad šiame pranešime pateikiau aiškias instrukcijas, kaip naudoti VBA įvairiais būdais "Excel" programoje sujungti. Visus šiuos metodus reikėtų išmokti ir naudoti savo duomenims. Išnagrinėkite praktikos knygą ir panaudokite naujai įgytas žinias. Dėl jūsų geranoriškos paramos esame motyvuoti ir toliau rengti tokius seminarus kaip šis.
Jei turite klausimų, nedvejodami kreipkitės į mus. Praneškite mums, ką manote, toliau pateiktoje komentarų srityje.
Svetainė Exceldemy Komanda nuolat atsakys į jūsų klausimus.