Inhaltsverzeichnis
In Excel ist die Verkettung der Vorgang, bei dem zwei Zeichenfolgen zu einer einzigen Zeichenfolge zusammengefügt werden. Einfach gesagt, wenn wir eine Tabelle mit Vornamen in einer Spalte und Nachnamen in einer anderen haben, können wir die Verkettungsprozedur verwenden, um sie in einem Sekundenbruchteil in einer einzigen Zelle zusammenzufügen. In Excel gibt es eine Funktion namens KONKATENIEREN () die uns diese Verkettung ermöglicht. Allerdings ist in VBA ist diese Art von Funktion nicht erlaubt. Wir können nicht verwenden KONKATENIEREN () in den VBA-Code einfügen, da er nicht funktionieren wird, denn VBA über keine eingebauten Funktionen verfügt und wir keine Tabellenkalkulationsfunktionen verwenden können. In dieser Lektion wird Ihnen also gezeigt, wie Sie VBA Verketten, um mehrere Zellen, Spalten und Zeilen in Excel zu kombinieren.
Download Arbeitsbuch Praxis
Laden Sie dieses Übungsheft herunter, um zu üben, während Sie diesen Artikel lesen.
VBA Verkettungsfunktion.xlsmEinführung in die VBA-Verkettungsfunktion
Wie wir bereits erwähnt haben, hat Excel keine eingebaute Funktion für die VBA-Verkettung, aber wir können sie als Funktion nutzen, indem wir verschiedene Zeichenfolgen mit Operatoren kombinieren. Hier verwenden wir das kaufmännische Und (&) als unser Betreiber.
⟴ Syntax
Zeichenfolge1 = " Erster Text"
String2 = " Zweiter Text"
⟴ Rückgabewert
Rückgabe_Wert = String1 & String2
4 verschiedene Verwendungen der VBA-Verkettungsfunktion in Excel
Hier werden wir 4 verschiedene Ansätze verwenden, um den Verkettungsprozess durchzuführen. Wir werden verschiedene Operatoren in Kombination mit VBA Code, um dies zu erreichen.
1. den Ampersand (&) Operator verwenden, um Zellen in VBA Concatenate zu verbinden
Wie in der folgenden Abbildung zu sehen ist, haben wir eine zweispaltige Datensammlung mit Vornamen in der einen und Nachnamen in der anderen Spalte. Durch das Zusammenführen der beiden Spalten können wir nun die gesamten Namen erhalten. Denn VBA keine eingebauten Methoden für die Verkettung hat, verwenden wir das kaufmännische Und (&) wie in den nachstehenden Anweisungen beschrieben.
Schritt 1:
- Drücken Sie zunächst Alt + F11 zum Öffnen des Makro-aktiviertes Arbeitsblatt.
- Klicken Sie dann auf
- Wählen Sie Modul .
Schritt 2:
- Um zwei Zellen zu einer zu kombinieren, kopieren Sie Folgendes und fügen es ein 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
Hier,
- String1 = Cells(5, 2).Value ist der Standort der ersten Zelle B5 , Zeile 5, und Spalte 2 .
- String2 = Cells(5, 3).Value ist der Standort der zweiten Zelle C5 , Zeile 5, und Spalte 3 .
- Cells(5, 5).Value = String1 & String2 ist der Standort der Ergebniszelle E5 , Zeile 5 und Spalte 5 .
- String1 & String2 sind die beiden Strings, die durch das kaufmännische Und verbunden sind (&)
Schritt 3:
- Speichern und drücken Sie F5 um das Programm auszuführen.
Daher erhalten Sie das Ergebnis in der E5 Zelle Ihres aktuellen Arbeitsblatts.
Schritt 4:
- Wiederholen Sie die Schritte für die übrigen Zellen und erhalten Sie die in der folgenden Abbildung gezeigten Ergebnisse.
Lesen Sie mehr: Wie man VBA StrComp in Excel verwendet (5 allgemeine Beispiele)
2. den Plus-Operator (+) zum Verbinden von Zellen in VBA Concatenate verwenden
Wie im vorherigen Abschnitt beschrieben, haben wir das kaufmännische Und verwendet (&) Sie können das gleiche Ergebnis erzielen, indem Sie den Plus-Operator (+) Zeichen anstelle des kaufmännischen Und-Zeichens (&) Führen Sie dazu die folgenden Schritte aus.
Schritt 1:
- Zum Öffnen Makro in Excel, drücken Sie Alt + F11 .
- Klicken Sie auf einfügen. und wählen Sie
- Nachdem Sie die Programmseite geöffnet haben, fügen Sie Folgendes ein 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
Hier,
- Cells(5, 5).Value = String1 + String2 ist diese Zeile, die wir verwenden plus (+) anstelle des kaufmännischen Und-Zeichens (&)
Schritt 2:
- Nach dem Einfügen, speichern Sie und drücken Sie F5 Um das Programm auszuführen, sehen Sie die Änderung in der Zelle E5 .
- Um die endgültigen Ergebnisse zu erhalten, füllen Sie die gewünschten Zellen aus, indem Sie die vorherigen Schritte erneut durchführen.
Lesen Sie mehr: Verwendung der VBA-Funktion StrConv (5 Beispiele)
Ähnliche Lektüre:
- Wie man ein Sub in VBA in Excel aufruft (4 Beispiele)
- Einen Wert in einer VBA-Funktion zurückgeben (sowohl Array- als auch Nicht-Array-Werte)
- Verwendung der VBA DIR-Funktion in Excel (7 Beispiele)
- Verwendung der VBA-Funktion UCASE in Excel (4 Beispiele)
- Verwendung der Funktion InStr in VBA (3 Beispiele)
3. mehrere Spalten mit VBA Concatenate hinzufügen
In den beiden vorangegangenen Ansätzen haben wir erörtert, wie man zwei Zellen kombiniert. Wenn wir dies jedoch auf die gesamte Spalte anwenden wollen, dauert das Hinzufügen einer Zelle nach der anderen sehr lange. Wir zeigen Ihnen, wie Sie mehrere Spalten insgesamt mit VBA Code für diese.
Schritt 1:
- Erstens, zum Öffnen Makro Presse Alt + F11
- Wählen Sie Modul von der einfügen. Registerkarte
- Dann fügen Sie Folgendes ein VBA
Sub ConcatCols() 'Spalten B & C in Spalte E verketten 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 Sub
Hier,
- With Worksheets("Blatt3") ist der Name Ihres aktuellen Arbeitsblatts.
- LastRow = .Cells(.Rows.Count, "B").End(xlUp).Row ist der erste Spaltenname.
- With .Range("E5:E" & LastRow) ist der Ergebnisrückgabezellenbereich.
- .Formula = "=B5&C5" ist die Formel zum Verbinden der ersten Zelle des Bereichs.
Schritt 2:
- Dann speichern Sie abschließend und drücken F5 um das Programm auszuführen.
Als Ergebnis erhalten Sie die Ergebnisse vollständig in einer Spalte.
Lesen Sie mehr: Wie man VBA Rnd in Excel verwendet (4 Methoden)
4. mehrere Zeilen mit VBA Concatenate verbinden
Zusätzlich zum Hinzufügen mehrerer Spalten können wir auch VBA Code, um mehrere Zeilen zu einer einzigen zu verketten. Wie im folgenden Screenshot gezeigt, wollen wir die drei Zeilen zu einer einzigen verketten. Um die Zeilen zu verketten, folgen Sie den einfachen Schritten unten.
Schritt 1:
- Zum Aktivieren Makro in Excel, drücken Sie Alt + F11 .
- Wählen Sie dann Modul von der einfügen.
- Um die Zeilen zu verketten, fügen Sie die 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
Hier,
- Set SourceRange = Bereich("B5:D5") ist der Quellzellenbereich.
- Bereich("B8").Wert = Trim(i) ist die Nummer der Rückgabezelle.
Schritt 2:
- Speichern Sie schließlich das Programm und drücken Sie F5 zu laufen.
Das Endergebnis der Verkettung der drei Zeilen wird also in der Zelle B8 .
Lesen Sie mehr: Einblenden der obersten Zeilen in Excel (7 Methoden)
Schlussfolgerung
Zusammenfassend hoffe ich, dass dieser Beitrag eine klare Anleitung zur Nutzung der VBA Alle diese Techniken sollten Sie erlernen und auf Ihre Daten anwenden. Schauen Sie sich das Übungsbuch an und wenden Sie Ihr neu erworbenes Wissen an. Dank Ihrer freundlichen Unterstützung sind wir motiviert, weiterhin Workshops wie diesen anzubieten.
Bitte zögern Sie nicht, uns zu kontaktieren, wenn Sie Fragen haben, und teilen Sie uns Ihre Meinung in den unten stehenden Kommentaren mit.
Die Exzellent Das Team wird ständig auf Ihre Fragen antworten.