Excel VBA Concatenate

Łączenie można zdefiniować jako połączenie lub dodanie dwóch ciągów lub elementów danych w celu uzyskania pojedynczego ciągu lub elementu danych nazywa się łączeniem. Krótko mówiąc, jeśli mamy listę imion w jednej kolumnie, a nazwisko w innej kolumnie za pomocą operacji konkatenacji, możemy połączyć je i umieścić w jednej komórce w ułamku sekundy. W programie Excel, aby osiągnąć to połączenie, mamy funkcję arkusza zwaną Concat (). Ale tego rodzaju funkcja nie jest dostępna w VBA. Nie możemy używać concatenate () w kodowaniu VBA, ponieważ nie będzie działać. Zatem w VBA nie ma dostępnych funkcji i nie można również uzyskać dostępu do funkcji arkusza, to w jaki sposób połączymy dwa lub więcej ciągów w VBA.

Najpierw zobaczymy, jak poradzimy sobie z funkcją arkusza roboczego, a następnie zobaczymy to samo w VBA. Rozważ dwa ciągi w programie Excel, jak pokazano na zrzucie ekranu.

Teraz użyj funkcji konkatenacji, aby połączyć oba ciągi.

Zwróć uwagę na formułę, D4 i E4 to adres komórek, które chcemy połączyć. Podobnie jak powyżej, możemy połączyć wiele liczb ciągów z różnych komórek.

Jak korzystać z funkcji Excel VBA Concatenate?

Nauczymy się korzystać z konkatenatu VBA z kilkoma przykładami w Excelu.

Możesz pobrać ten szablon Excel VBA Concatenate tutaj - Szablon Excel VBA Concatenate

VBA Concatenate - Przykład nr 1

Ponieważ nie mamy żadnych wbudowanych funkcji w VBA, konkatenację w VBA można osiągnąć za pomocą operatora ampersand (&).

Weźmiemy ten sam przykład, który już wzięliśmy dla funkcji arkusza. Mamy komórkę „I love” w komórce D4 i „India” w komórce E4. Teraz połączymy te dwa ciągi w VBA. Przejdź do zakładki edytora VBA.

Krok 1: Przejdź do karty Deweloper, a następnie wybierz kartę „Visual Basic” po lewej stronie. Następnie przejdzie do poniższego ekranu.

Krok 2: Najpierw musimy utworzyć podproces o dowolnej nazwie, taki jak konkatenacja . Aby zainicjować podproces, użyj słowa kluczowego Sub i nazwa procesu „konkatenacja”.

Kod:

 Sub Concatenate () End Sub 

Krok 3: W podprocesie musimy zdefiniować łańcuchy takie jak string1, string2 i full_string za pomocą słowa kluczowego dim.

Kod:

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

Krok 4: Teraz musimy przypisać ciąg „I love” do string1, a „India” do string2, używając operatora przypisania „=” jak poniżej.

Kod:

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

Krok 5: Teraz połącz łańcuch1 i łańcuch2 za pomocą operatora ampersand i przypisz tę kombinację do pełnego_łańcucha, jak poniżej. Zachowaj odstęp między zmiennymi łańcuchowymi a operatorem ampersand, aby uniknąć komunikatu o błędzie.

Kod:

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

Krok 6: Teraz konkatenacja zarówno łańcucha1, jak i łańcucha2 jest zapisywana w pełnym łańcuchu. Wyświetl ten ciąg za pomocą okna komunikatu jak poniżej.

Kod:

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

Krok 7: Teraz nadszedł czas na wykonanie procesu. Kliknij przycisk odtwarzania oznaczony czerwonym kolorem. Wynik pojawi się w oknie komunikatu, jak poniżej.

Krok 8: W powyższym przykładzie wzięliśmy dwa ciągi bezpośrednio w programie i nie ma spacji między pierwszym ciągiem a drugim ciągiem. Jak zatem dodać miejsce? Bardzo prosta podczas konkatenacji, także konkatenacja przestrzeni.

Kod:

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

Krok 9: Obserwuj powyższy obraz, dodaliśmy spację między ciągiem 1 a ciągiem 2 za pomocą podwójnych cudzysłowów. W przypadku, gdy chcemy dodać „-”, możemy to zrobić również.

Kod:

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

Krok 10: Wynik będzie taki jak poniżej.

Konkatenat VBA - przykład nr 2

Krok 1: Teraz bierzemy dane z arkusza programu Excel i konkatenujemy, a następnie wyświetlamy wyniki. W tym celu przypisz dane w komórkach do string1 i string2, jak pokazano poniżej.

Kod:

 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 MsgBox (full_string) End Sub 

Krok 2: Obserwuj powyższy obraz, przypisaliśmy wartość w komórkach (4, 4) do stirng1 i komórkach (4, 5) w ciągu 2. Jak zwykle konkatenuj oba ciągi za pomocą operatora ampersand.

Kod:

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

Krok 3: Z tego powodu dane w komórkach (4, 4) i komórkach (4, 5) zostaną połączone i zapisane w pełnym łańcuchu. Teraz wykonaj proces, klikając symbol odtwarzania.

Krok 4: Dane pochodzą z programu Excel pokazanego poniżej.

Krok 5: Jeśli zmienimy dane w programie Excel i ponownie uruchomimy, wyniki programu zmienią się zgodnie z danymi programu Excel. Zamiast Indii zmieniłem się na słodycze, teraz będziemy biegać i sprawdzać.

Krok 6: Teraz wynik pojawi się w oknie komunikatu. Zamiast okna komunikatu, jeśli chcemy w samym Excelu, możemy to zrobić.

Kod:

 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 Cells (4, 7) .Value = String1 & String2 MsgBox ( pełny_ciąg) End Sub 

Krok 7: Przypisz konkatenację w komórce adresu komórki (4, 7) i usuń msgbox, ponieważ nie potrzebujemy już okna komunikatu. Naciśnij przycisk odtwarzania i przejdź do ciebie excel, a check uzyska wynik w komórce (4, 7) (wiersz 4 i kolumna 7).

Krok 8: Gdy dodajemy dwa ciągi, możemy użyć symbolu „+” również jak poniżej.

Kod:

 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 Cells (4, 7) .Value = String1 + String2 End Sub 

Krok 9: Wynik będzie taki jak poniżej. Nie będzie różnicy.

Krok 10: Ale jeśli użyjemy liczb zamiast ciągów do konkatenacji za pomocą symbolu „+”, to spowoduje to konkatenację tylko bez dodawania, ponieważ wzięliśmy typ danych jako ciąg, a nie liczbę całkowitą.

Krok 11: Wynik będzie taki jak poniżej.

W przypadku, gdy bierzemy typ danych jako liczbę całkowitą, powinniśmy używać operatora ampersand tylko do konkatenacji. Jeśli użyjemy „+” podczas przyjmowania liczb całkowitych typu danych, to nie będzie ono konkatenować, ale wykona dodawanie.

VBA Concatenate - Przykład nr 3

Krok 1: Jeśli chcemy połączyć ciąg i liczbę, możemy zastosować tę samą technikę. W tym celu zachowaj wartość liczbową w jednej komórce i wartość ciągu w innej komórce i kliknij opcję uruchamiania.

Krok 2: Wynik nie będzie miał wpływu, będzie to taki sam wynik łańcucha, jak wcześniej, z jedyną zmianą liczby zamiast łańcucha.

Rzeczy do zapamiętania

  • Łączenie polega na łączeniu ciągów dwóch lub więcej wielu ciągów różnych komórek. Aby wykonać to w programie Excel, mamy wbudowaną funkcję arkusza roboczego, czyli CONCAT.
  • Concat funkcja arkusza roboczego nie jest dostępna w VBA do konkatenacji.
  • Łączenie zostanie osiągnięte za pomocą ampersand operatora (&) i plus (+). Jeśli bierzesz całkowity typ danych, symbol „+” wykona operację dodawania zamiast konkatenacji, dlatego upewnij się, że.
  • Użyj spacji przed i po symbolach & i +, w przeciwnym razie wyświetli się komunikat o błędzie.
  • Podczas definiowania zmiennych łańcuchowych nie należy pozostawiać spacji w nazwie zmiennej. Jeśli jakakolwiek przestrzeń podana w nazwie zmiennej łańcuchowej nie zezwoli, ponieważ spowoduje wyświetlenie komunikatu o błędzie, jak poniżej.

Polecane artykuły

To jest przewodnik po VBA Concatenate. Tutaj omawiamy, jak korzystać z Excel VBA Concatenate Function wraz z praktycznymi przykładami i szablonem Excel do pobrania. Możesz także przejrzeć nasze inne sugerowane artykuły -

  1. VBA InStr wyjaśniono za pomocą przykładów
  2. Typ danych VBA Integer
  3. Jak wybrać komórkę za pomocą kodu VBA?
  4. Transponuj zakres w VBA

Kategoria: