VBA verketten

Verkettung bedeutet, zwei Werte oder zwei Zeichenfolgen miteinander zu verbinden, ähnlich wie Excel, das wir zum Verketten verwenden, oder auch als kaufmännisches Und-Operator bezeichnet. Zwei verketten zwei Zeichenfolgen, die wir verwenden, und Operator wie Zeichenfolge 1 und Zeichenfolge 2. Jetzt gibt es eine wichtige Sache, an die Sie sich erinnern müssen Während wir den Operator & verwenden, müssen wir Leerzeichen bereitstellen, oder VBA wird dies so lange berücksichtigen.

VBA-Verkettungszeichenfolgen

VBA-Verkettung ist eines der Dinge, die wir verwendet haben, um zwei oder mehr Wertezellenwerte miteinander zu kombinieren. Wenn ich in einfacher Sprache sage, dass es kombiniert wird, werden zwei oder mehr Werte miteinander verbunden, um den vollen Wert zu erhalten.

Wir haben eine Funktion namens CONCATENATE in Excel, die zwei oder mehr Werte oder zwei oder mehr Zellenwerte miteinander kombiniert.

In VBA haben wir jedoch keine integrierte Funktion, um zwei oder mehr Werte miteinander zu verknüpfen. Tatsächlich können wir nicht einmal auf die Arbeitsblattfunktionsklasse zugreifen, um auf die VBA CONCATENATE-Funktion als Arbeitsblattfunktion zuzugreifen.

Wie verkette ich Strings in VBA?

Wenn wir keine integrierte Funktion zum Verketten von Werten haben und sogar die Arbeitsblattfunktion nicht in VBA integriert ist. Die Herausforderung besteht nun darin, wie wir Werte kombinieren.

Obwohl es keine integrierten Funktionen gibt, können wir sie in VBA mit dem kaufmännischen Und (&) kombinieren.

Wenn Sie unseren Posts regelmäßig folgen, verwenden wir in unserer Codierung häufig das kaufmännische Und (&).

Wenn Sie beispielsweise den Vor- und Nachnamen getrennt haben, können wir diese beiden kombinieren und als vollständigen Namen festlegen. Befolgen Sie die folgenden Schritte, um den VBA-Makrocode selbst zu schreiben.

Schritt 1: Gehen Sie zum Visual Basic-Editor und erstellen Sie eine VBA-Unterprozedur.

Schritt 2: Definieren Sie drei Variablen als String .

Code:

 Sub Concatenate_Example () Dim Vorname als String Dim Nachname als String Dim Full_Name als String End Sub 

Schritt 3: Weisen Sie der Variablen nun den Vor- und Nachnamen zu.

Code:

 Sub Concatenate_Example () Dim Vorname als Zeichenfolge Dim Nachname als Zeichenfolge Dim Full_Name als Zeichenfolge Vorname = "Sachin" Nachname = "Tendulkar" End Sub 

Schritt 4: Kombinieren Sie nun diese beiden Namen mit der Variablen Full_Name unter Verwendung der kaufmännischen Und-Variablen.

Code:

 Sub Concatenate_Example () Dim Vorname als Zeichenfolge Dim Nachname als Zeichenfolge Dim Full_Name als Zeichenfolge First_Name = "Sachin" Last_Name = "Tendulkar" Full_Name = Vorname & Nachname End Sub 

Schritt 5: Zeigen Sie nun den Wert der Variablen Full_Name im Meldungsfeld an.

Code:

 Sub Concatenate_Example () Dim Vorname als Zeichenfolge Dim Nachname als Zeichenfolge Dim Full_Name als Zeichenfolge First_Name = "Sachin" Last_Name = "Tendulkar" Full_Name = Vorname & Nachname MsgBox Full_Name End Sub 

Führen Sie nun den Code aus, wir erhalten den vollständigen Namen im Meldungsfeld.

Das Problem mit diesem vollständigen Namen ist, dass wir keinen Vor- und Nachnamen als Trennzeichen hinzugefügt haben, während wir den Vor- und Nachnamen kombinieren und auch Leerzeichen kombinieren.

Code:

 Sub Concatenate_Example () Dim Vorname als Zeichenfolge Dim Nachname als Zeichenfolge Dim Full_Name als Zeichenfolge First_Name = "Sachin" Nachname = "Tendulkar" Full_Name = Vorname & "" & Nachname MsgBox Full_Name End Sub 

Dies gibt jetzt einen richtigen vollständigen Namen.

So können wir mit dem kaufmännischen Und-Zeichen Werte verketten. Jetzt werden wir das Arbeitsblattproblem lösen, bei dem Vorname und Nachname zusammen gelöst werden, um einen vollständigen Namen zu erhalten.

Da wir viele Namen kombinieren müssen, müssen wir Schleifen verwenden, um den Vor- und Nachnamen zu kombinieren. Der folgende Code erledigt die Arbeit für Sie.

Code:

 Sub Concatenate_Example1 () Dim i als Ganzzahl für i = 2 bis 9 Zellen (i, 3) .Value = Zellen (i, 1) & "" & Zellen (i, 2) Weiter i End Sub 

Dies kombiniert den Vor- und Nachnamen genau wie unsere VBA-Verkettungsfunktion.

Häufiger Fehler bei der Verkettung von kaufmännischem Und VBA

Wenn Sie meine Codes bemerken, habe ich zwischen den Werten ein Leerzeichen und ein kaufmännisches Und-Zeichen eingefügt. Dies ist aufgrund der Art der VBA-Programmierung wesentlich.

Wir können Werte und kaufmännisches Und-Symbol nicht miteinander kombinieren, da sonst ein Kompilierungsfehler wie der folgende angezeigt wird.

VBA-Verkettung mit der JOIN-Funktion

In VBA können wir die JOIN-Funktion verwenden, um Werte zu kombinieren. Schauen Sie sich zunächst die VBA JOIN-Funktionssyntax an.

  • Das Array ist nichts anderes als ein Array, das unsere Werte enthält. Zum Beispiel sowohl Vorname als auch Nachname.
  • Das Trennzeichen ist nichts anderes als das Trennzeichen zwischen den einzelnen Array-Werten, in diesem Fall dem Leerzeichen.

Der folgende Code zeigt das Beispiel desselben.

Code:

Sub Concatenate_Example2 () Dim MyValues ​​As Variant Dim Full_Name As String MyValues ​​= Array ("Sachin", "Tendulkar") Full_Name = Join (MyValues, "") MsgBox Full_Name End Sub