Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Alle Zellen in Bereich verketten mit Trennzeichen

Alle Zellen in Bereich verketten mit Trennzeichen
26.02.2005 14:56:06
Markus
Hallo Forum,
ich möchte gerne viele Zellen in einer Spalte in einer Zelle verketten.
Die Lösung =VERKETTEN(A1;"; ";A2;"; ";...) oder =A1&"; "&A2&"; ";...
ist leider viel zu aufwendig, da es sich um etliche Zellen handelt.
Gibt es eine Möglichkeit so eine Verkettung zu realisieren?
Viel Grüße
Markus
Anzeige
AW: Alle Zellen in Bereich verketten mit Trennzeichen
Rudi
Ja, aber nur mit VBA!
Rudi
AW: Alle Zellen in Bereich verketten mit Trennzeichen
Markus
Hallo Rudi,
danke für die Rückmeldung!
Leider bin ich kein Held in VBA -wäre die Lösung sehr aufwändig?
Gruß
Markus
AW: Alle Zellen in Bereich verketten mit Trennzeichen
Rudi
Markier die Zellen, die verkettet werden sollen. das Ergebnis wird in A1 ausgegeben:

Sub Verketten()
Dim c As Range, tmp As String
For Each c In Selection
tmp = tmp & c & ";"
Next
tmp = Left(tmp, Len(tmp) - 1)
[a1] = tmp
End Sub

mfg Rudi
Anzeige
AW: Alle Zellen in Bereich verketten mit Trennzeichen
Vielen
Hallo Rudi,
vielen Dank für die Rückmeldung und die Lösung!
Werde aber die Lösung von Josef benutzen, da ich das einfacher den anderen Benutzern erklären kann!
Trotzdem Vielen Dank und ein schönes Wochenende!
Gruß
Markus
AW: Alle Zellen in Bereich verketten mit Trennzeic
26.02.2005 15:04:38
Josef
Hallo Markus!
Wie wär's mit einer kleinen Funktion?
 
 ABC
1test test; text; mit; leerzeilen; und; trennzeichen
2text  
3mit  
4   
5leerzeilen  
6und  
7trennzeichen  
Formeln der Tabelle
C1 : =verketten2(A1:A7;"; ")
 

Und die Funktion dazu. (gehört in ein allgemeines Modul!)

Function Verketten2(ByRef bereich As Range, Trennzeichen As String) As String
Dim rng As Range
For Each rng In bereich
If rng <> "" Then
Verketten2 = Verketten2 & rng & Trennzeichen
End If
Next
If Len(Verketten2) > 0 Then _
Verketten2 = Left(Verketten2, Len(Verketten2) - Len(Trennzeichen))
End Function

Gruß Sepp
P.S.: Rückmeldung nicht vergessen!
Anzeige
Ein Traum - wahnsinn!!! Vielen Dank!!!!!!!
Markus
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Zellen in Excel mit Trennzeichen verketten


Schritt-für-Schritt-Anleitung

Um Zellen in Excel mit einem Trennzeichen zu verketten, kannst Du folgende Methoden verwenden:

  1. Verwendung von VBA: Wenn Du viele Zellen verketten möchtest, ist die VBA-Methode oft die effizienteste.

    a. Öffne den VBA-Editor mit ALT + F11.

    b. Füge ein neues Modul hinzu (Einfügen > Modul).

    c. Kopiere und füge den folgenden Code ein:

    Sub Verketten()
       Dim c As Range, tmp As String
       For Each c In Selection
           tmp = tmp & c & ";"
       Next
       tmp = Left(tmp, Len(tmp) - 1)
       [A1] = tmp
    End Sub

    d. Markiere die Zellen, die Du verketten möchtest, und führe das Makro aus.

  2. Benutzerdefinierte Funktion: Du kannst eine benutzerdefinierte Funktion erstellen, um Zellen dynamisch zu verketten.

    a. Füge den folgenden Code in dasselbe Modul ein:

    Function Verketten2(ByRef bereich As Range, Trennzeichen As String) As String
       Dim rng As Range
       For Each rng In bereich
           If rng <> "" Then
               Verketten2 = Verketten2 & rng & Trennzeichen
           End If
       Next
       If Len(Verketten2) > 0 Then _
           Verketten2 = Left(Verketten2, Len(Verketten2) - Len(Trennzeichen))
    End Function

    b. Verwende die Formel in Excel wie folgt: =Verketten2(A1:A7;"; ").


Häufige Fehler und Lösungen

  • Fehler: Makro funktioniert nicht
    Lösung: Stelle sicher, dass die Zellen, die Du verketten möchtest, tatsächlich markiert sind und dass Du das Makro korrekt ausführst.

  • Fehler: #NAME?
    Lösung: Überprüfe, ob die Funktion richtig im Modul definiert ist und dass Du sie korrekt in der Zelle aufrufst.


Alternative Methoden

Falls Du kein VBA verwenden möchtest, kannst Du auch die TEXTVERKETTEN-Funktion (verfügbar in Excel 365 und Excel 2021) verwenden:

=TEXTVERKETTEN("; "; WAHR; A1:A7)

Dies erlaubt es Dir, Zellen in einem Bereich ohne VBA zu verketten.


Praktische Beispiele

  1. Verketten mit Komma:

    =TEXTVERKETTEN(", "; WAHR; A1:A10)
  2. Verketten mit Semikolon:

    =TEXTVERKETTEN("; "; WAHR; A1:A10)
  3. Verketten mit Leerzeichen:

    =TEXTVERKETTEN(" "; WAHR; A1:A10)

Diese Formeln verketten mehrere Zellen in einer Zelle mit dem angegebenen Trennzeichen.


Tipps für Profis

  • Nutze die TEXTVERKETTEN-Funktion für eine dynamische Verkettung, wenn Du Excel 365 oder neuere Versionen verwendest.
  • Halte Deine VBA-Funktionen in einem Modul organisiert, um die Wartung zu erleichtern.
  • Experimentiere mit verschiedenen Trennzeichen, um die Lesbarkeit Deiner Daten zu verbessern.

FAQ: Häufige Fragen

1. Kann ich Zellen verketten, die leere Werte enthalten?
Ja, sowohl die VBA-Methoden als auch die TEXTVERKETTEN-Funktion ignorieren leere Zellen, wenn Du das Trennzeichen richtig einstellst.

2. Wie kann ich den VBA-Code anpassen?
Du kannst den VBA-Code leicht anpassen, um andere Trennzeichen zu verwenden, indem Du das Zeichen in den entsprechenden Zeilen änderst.

3. Funktioniert das auch in älteren Excel-Versionen?
Die VBA-Methode funktioniert in allen Versionen, während TEXTVERKETTEN nur in Excel 365 und Excel 2021 verfügbar ist.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige