Excel VBA Concatenate

Samkoppling kan definieras som att gå med eller lägga till två strängar eller dataobjekt för att få en enda sträng eller datapost kallas sammankoppling. Med enkla ord, om vi har en lista med förnamn i en kolumn och efternamn i en annan kolumn med hjälp av sammankoppling kan vi kombinera båda och placera i en enda cell inom en bråkdel av sekunder. I Excel har vi en kalkylfunktion som heter Concat () för att uppnå denna sammanlänkning . Men den här typen av funktion är inte tillgänglig i VBA. Vi kan inte använda concatenate () i VBA-kodning eftersom det inte kommer att fungera. Så det finns inga funktioner tillgängliga i VBA och kan inte komma åt kalkylfunktionerna också, hur vi kommer att sammanfoga två eller flera strängar i VBA.

Först kommer vi att se hur vi kommer att göra med kalkylarkfunktionen, sedan ser vi detsamma i VBA. Tänk på två strängar i Excel som visas i skärmbilden nedan.

Använd nu sammansatt funktion för att kombinera båda strängarna.

Observera formeln, D4 och E4 är adressen till cellerna som vi vill kombinera. Liksom ovan kan vi sammanfoga flera antal strängar från olika celler.

Hur använder jag Excel VBA Concatenate-funktion?

Vi kommer att lära dig att använda en VBA-sammanslagning med några exempel i Excel.

Du kan ladda ner denna VBA Concatenate Excel-mall här - VBA Concatenate Excel Mall

VBA Concatenate - Exempel # 1

Eftersom vi inte har några inbyggda funktioner i VBA, kan sammankoppling i VBA uppnås genom att använda ampersand (&) -operatör.

Vi tar samma exempel som vi redan tog för kalkylarkfunktionen. Vi har "Jag älskar" i cell D4 och "Indien" i cell E4. Nu kommer vi att kombinera de två strängarna i VBA. Gå till fliken VBA-redigerare.

Steg 1: Gå till fliken Utvecklare och välj sedan fliken "visual basic" på vänster sida. Sedan kommer det att gå till nedanstående skärm.

Steg 2: Först måste vi skapa en delprocess med alla namn som sammankoppling . För att initiera delprocesser använder du nyckelordet Sub och processnamnet "sammankoppling".

Koda:

 Sub Concatenate () Slut Sub 

Steg 3: I delprocesser måste vi definiera strängar som sträng1, sträng2 och fullsträng med nyckelordet dim.

Koda:

 Sub Concatenate () Dim String1 As String Dim String2 As String Dim full_string Som String End Sub 

Steg 4: Nu måste vi tilldela strängen "I love" till string1 och "India" till string2 med "=" tilldelningsoperatör enligt nedan.

Koda:

 Sub Concatenate () Dim String1 As String Dim String2 As String Dim full_string As String String1 = "I Love" String2 = "India" End Sub 

Steg 5: Kombinera nu strängen1 och strängen2 med hjälp av ampersand-operatören och tilldela den kombinationen till full_string enligt nedan. Håll ett avstånd mellan strängvariabler och ampersand-operatör för att undvika felmeddelande.

Koda:

 Sub Concatenate () Dim String1 As String Dim String2 As String Dim full_string As String String1 = "Jag älskar" String2 = "India" full_string = String1 & String2 End Sub 

Steg 6: Nu lagras sammanlänkning av både sträng1 och sträng2 i fullsträng. Visa den här strängen med en meddelanderuta enligt nedan.

Koda:

 Sub Concatenate () Dim String1 As String Dim String2 As String Dim full_string Som String String1 = "I Love" String2 = "India" full_string = String1 & String2 MsgBox (full_string) End Sub 

Steg 7: Nu är det dags att utföra processen. Klicka på uppspelningsknappen som är markerad med röd färgruta. Resultatet visas i meddelanderutan enligt nedan.

Steg 8: I exemplet ovan tog vi de två strängarna direkt i programmet och det finns inget utrymme mellan den första strängen och den andra strängen. Hur lägger jag till utrymme då? Mycket enkelt samtidigt som du slår samman, sammanlänkar utrymmet också.

Koda:

 Sub Concatenate () Dim String1 As String Dim String2 As String Dim full_string As String String1 = "Jag älskar" String2 = "India" full_string = String1 & "" & String2 MsgBox (full_string) End Sub 

Steg 9: Observera bilden ovan som vi lagt till utrymmet mellan sträng1 och sträng2 med hjälp av dubbelcitationstecken. Om vi ​​vill lägga till '-' kan vi göra det också.

Koda:

 Sub Concatenate () Dim String1 As String Dim String2 As String Dim full_string As String String1 = "Jag älskar" String2 = "India" full_string = String1 & "-" & String2 MsgBox (full_string) End Sub 

Steg 10: Resultatet blir som nedan.

VBA Concatenate - Exempel # 2

Steg 1: Nu tar vi data från excel-arket och sammankopplar och visar sedan resultat. För det tilldelas data i cellerna till sträng1 och sträng2 som visas nedan.

Koda:

 Sub Concatenate2 () Dim String1 As String Dim String2 Som String Dim full_string Som String String1 = Cells (4, 4) .Value String2 = Cells (4, 5) .Värde MsgBox (full_string) End Sub 

Steg 2: Observera bilden ovan, vi tilldelade värdet i celler (4, 4) till stirng1 och celler (4, 5) i sträng2. Som vanligt, sammanfoga båda strängarna med hjälp av ampersandoperatören.

Koda:

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

Steg 3: På grund av detta kommer data i celler (4, 4) och celler (4, 5) att kombineras och lagras i fullsträng. Kör nu processen genom att klicka på spelsymbolen.

Steg 4: Data hämtas från Excel som visas nedan.

Steg 5: Om vi ​​ändrar data i Excel och körs igen kommer programresultaten att ändras enligt Excel-data. Istället för Indien ändrade jag till godis nu ska vi springa och kolla.

Steg 6: Nu kommer resultatet i meddelanderutan. I stället för en meddelanderuta om vi vill i Excel själv kan vi göra det.

Koda:

 Sub Concatenate2 () Dim String1 As String Dim String2 As String Dim full_string Som String String1 = Cells (4, 4) .Value String2 = Cells (4, 5) .Value Cells (4, 7) .Value = String1 & String2 MsgBox ( full_string) End Sub 

Steg 7: Tilldela sammankopplingen i celladresscell (4, 7) och ta bort msgbox eftersom vi inte längre behöver meddelanderuta. Tryck på play-knappen och gå till dig excel och kontrollera att resultatet kommer i cell (4, 7) (rad 4 och kolumn 7).

Steg 8: När vi lägger till två strängar kan vi använda symbolen "+" också som nedan.

Koda:

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

Steg 9: Resultatet blir som nedan. Det blir ingen skillnad.

Steg 10: Men om vi använder siffror istället för strängar för att sammanfoga med "+" -symbolen kommer det att utföra sammanlänkning bara inte tillägg eftersom vi tog datatypen som en sträng, inte ett heltal.

Steg 11: Resultatet blir som nedan.

Om vi ​​tar datatypen som heltal ska vi endast använda ampersand-operatören för sammankoppling. Om vi ​​använder "+" när vi tar heltaldatatyp, kommer det inte att sammanfoga utan utföra tillägg.

VBA Concatenate - Exempel # 3

Steg 1: Om vi ​​vill kombinera en sträng och nummer kan vi också använda samma teknik. För att behålla nummervärdet i en cell och strängvärdet i en annan cell och klicka på köralternativet.

Steg 2: Resultatet kommer inte att påverka det kommer att vara samma strängresultat som tidigare med den enda ändringen är nummer istället för en sträng.

Saker att komma ihåg

  • Samkoppling är att kombinera strängarna i två eller flera multipla strängar av olika celler. För att utföra detta i Excel har vi inbyggd kalkylbladsfunktion som är CONCAT.
  • Arbetsbladsfunktion concat är inte tillgänglig i VBA för att sammanfoga.
  • Samkoppling uppnås med hjälp av operatörens ampersand (&) och plus (+). Om du tar heltaldatatyp, kommer "+" -symbolen att utföra tilläggsoperation istället för sammankoppling och därmed se till att.
  • Använd mellanslag före och efter symbolerna & och + annars kastar det ett felmeddelande.
  • När du definierar strängvariabler ska du inte hålla något utrymme i ett variabelnamn. Om något utrymme i strängvariabelns namn tillåter det inte eftersom det kommer att kasta felmeddelande som nedan.

Rekommenderade artiklar

Detta är en guide till VBA Concatenate. Här diskuterar vi hur du använder Excel VBA Concatenate-funktion tillsammans med praktiska exempel och nedladdningsbar Excel-mall. Du kan också gå igenom våra andra föreslagna artiklar -

  1. VBA InStr förklarade med exempel
  2. VBA heltal datatyp
  3. Hur väljer jag cell med VBA-kod?
  4. Transponera ett intervall i VBA

Kategori: