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

SummeWENN mit Text ("Verketten")

Forumthread: SummeWENN mit Text ("Verketten")

SummeWENN mit Text ("Verketten")
15.11.2003 19:36:48
Zeno
Leider komme ich mit der Excelfunktion "SUMMEWENN" nicht weiter und brauche dringend Hilfe!
Mein Problem:
In einer Spalte G stehe lauter ganzzahlige mehrfach auftretende Zahlenwerte (Zwischen 1 und 5). Ich möchte nun diese Spalte z.B. nach dem Wert "3" durchsuchen und bei jeder gefundenen 3 in der gleichen Zeile den Zellenwert in der Spalte B (hier steht immer ein Text) "verketten".
Leider erlaubt die "SUMMEWENN"-Funktion nur ein Aufsummieren von Zahlenwerten der Spalte B. Bei mir steht hier aber ein Text, den ich "Verketten" möchte.
Hat jemand hierzu eine Idee wie man dies lösen kann?
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: SummeWENN mit Text ("Verketten")
15.11.2003 20:09:16
Benny
Hallo Zeno

wie wäre es damit:

AW: SummeWENN mit Text ("Verketten")
16.11.2003 11:33:39
Zeno
Danke für deine Hilfe Benny,
doch mein Problem ist ein wenig schwieriger.
Bezogen auf deine Tabelle möchte ich folgendes darstellen:
- Durchsuche die Spalte E nach der Ziffer 3 (Bei dir also E3 und E5)
- Schau nun in diesen Zeilen in die jeweilige B Spalte (also B3 und B5)
- und nun "verkette" alle Inhalte in diesen gefundenen B-Zellen (bei dir die Inhalte B3 und B5) in einer einzigen Zelle, in der das Ergebnis ausgegeben werden soll

Hast du hierzu auch noch einen Tipp für mich?

Gruß Zeno
Anzeige
AW: SummeWENN mit Text ("Verketten")
16.11.2003 14:17:54
Boris
Hi Zeno,

das mit dem Verketten geht imho nur mit einer eigenen kleinen Funktion.

Einfügen in ein allgemeins Modul:

Option Explicit


Function verketten2(Suchbereich As Range, Suchbegriff As String, Ergebnisbereich As Range, Optional Trennzeichen As String) As String
Application.Volatile
Dim C As Range, S As String
For Each C In Suchbereich
If C = Suchbegriff Then
S = S & C.Offset(0, Ergebnisbereich.Column - Suchbereich.Column) & Trennzeichen
End If
Next C
If Len(S) = Len(Trennzeichen) Then
S = ""
Else
S = Left(S, Len(S) - Len(Trennzeichen))
End If
verketten2 = S
End Function


In der Tabelle aufrufen mit:
=VERKETTEN2(E3:E5;3;B3:B5;", ")

nach der Syntax:

=VERKETTEN2(Suchbereich;Suchbegriff;Ergebnisbereich;Trennzeichen)

Geht sicherlich eleganter, aber so geht´s schon mal.

Grüße Boris

P.S: Gib die Bereich nur so lang wie nötig an, denn sonst dauert die Berechnung sehr lange (vermeide also Bereichsangaben wie z.B. "A:A").
Anzeige
AW: SummeWENN mit Text ("Verketten")
16.11.2003 16:16:02
Zeno
Hallo Boris,

super, vielen Dank. Deine Funktion hat bestens funktioniert !

Gruß, Zeno
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

SummeWENN mit Text und Verketten in Excel


Schritt-für-Schritt-Anleitung

  1. Öffne Excel und erstelle eine Tabelle mit den benötigten Daten. Stelle sicher, dass du eine Spalte (z.B. Spalte E) hast, in der du nach einem bestimmten Wert suchen möchtest (z.B. "3") und eine andere Spalte (z.B. Spalte B), die die Texte enthält, die du verketten möchtest.

  2. Füge das VBA-Modul ein:

    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
    • Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.
    • Kopiere den folgenden Code in das Modul:
    Function verketten2(Suchbereich As Range, Suchbegriff As String, Ergebnisbereich As Range, Optional Trennzeichen As String) As String
       Application.Volatile
       Dim C As Range, S As String
       For Each C In Suchbereich
           If C = Suchbegriff Then
               S = S & C.Offset(0, Ergebnisbereich.Column - Suchbereich.Column) & Trennzeichen
           End If
       Next C
       If Len(S) = Len(Trennzeichen) Then
           S = ""
       Else
           S = Left(S, Len(S) - Len(Trennzeichen))
       End If
       verketten2 = S
    End Function
  3. Verwende die Funktion in deiner Tabelle:

    • Gehe zurück zu deiner Excel-Tabelle.
    • Gib in eine leere Zelle die folgende Formel ein:
    =VERKETTEN2(E3:E5;3;B3:B5;", ")
    • Ersetze E3:E5 durch den Suchbereich, 3 durch den Suchbegriff und B3:B5 durch den Ergebnisbereich.
  4. Drücke Enter, um das Ergebnis zu sehen. Du solltest nun alle Texte aus der Spalte B, die zu den gefundenen "3" in der Spalte E gehören, in der angegebenen Zelle verkettet sehen.


Häufige Fehler und Lösungen

  • Fehler: #NAME?

    • Dieser Fehler tritt auf, wenn Excel die benutzerdefinierte Funktion nicht erkennen kann. Stelle sicher, dass du den VBA-Code korrekt eingefügt hast und dass das Modul gespeichert ist.
  • Problem bei der Berechnung

    • Wenn die Berechnung lange dauert, reduziere den Bereich in der Formel. Vermeide es, ganze Spalten anzugeben (z.B. "A:A").

Alternative Methoden

Falls du keine VBA-Funktion verwenden möchtest, kannst du auch die TEXTVERKETTEN-Funktion (in neueren Excel-Versionen verfügbar) nutzen. Diese Funktion ermöglicht das Verketten von Texten basierend auf Kriterien.

Beispiel:

=TEXTVERKETTEN(", "; WAHR; WENN(E3:E5=3; B3:B5; ""))

Diese Formel verkettet die Texte aus Spalte B, wenn der Wert in Spalte E gleich "3" ist.


Praktische Beispiele

Angenommen, du hast folgende Daten:

E B
3 Text1
2 Text2
3 Text3
4 Text4
3 Text5

Wenn du die Formel =VERKETTEN2(E1:E5; 3; B1:B5; ", ") verwendest, erhältst du als Ergebnis:

Text1, Text3, Text5

Dies zeigt, wie du mit der SUMMEWENN-Logik sowohl Zahlen als auch Texte in Excel verarbeiten kannst.


Tipps für Profis

  • Verwende Trennzeichen: Achte darauf, dass du ein passendes Trennzeichen in deiner VBA-Funktion angibst, um die Ausgabe lesbar zu gestalten.
  • Optimierung der Berechnung: Wenn du häufig die gleichen Bereiche verwendest, speichere diese in benannten Bereichen, um die Lesbarkeit und Wartbarkeit deiner Formeln zu verbessern.
  • Fehlerbehandlung: Du kannst die Funktion erweitern, um Fehler abzufangen, z.B. wenn der Suchbereich leer ist.

FAQ: Häufige Fragen

1. Kann ich die Funktion auch in anderen Tabellen verwenden? Ja, du kannst die VBA-Funktion in jeder Excel-Arbeitsmappe verwenden, in der sie gespeichert ist. Kopiere den Code einfach in das entsprechende Modul.

2. Funktioniert das auch in älteren Excel-Versionen? Die VBA-Lösung funktioniert in den meisten Excel-Versionen. Die TEXTVERKETTEN-Funktion ist jedoch nur in Excel 365 und neueren Versionen verfügbar.

3. Wie kann ich die Ausgabe formatieren? Die Ausgabe kann durch die Auswahl des Trennzeichens in der Funktion formatiert werden. Du kannst auch zusätzliche Formatierungen in Excel selbst anwenden.

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