Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Durch "/" getrennte Wörter in einer Zelle Zählen

Durch "/" getrennte Wörter in einer Zelle Zählen
Tobson
Hallo
Ist es möglich die Anzahl der Wörter in einer Zelle zu zählen, die folgendermaßen aussieht:
"Probe/Test/Zahlung/..."
Die Anzahl der Wörter kann variieren. Der Hintergrund ist der, dass das zweite Wort in einer neuen Spalte in Zeile 1 geschrieben werden soll, das zweite Wort in der folgenden Spalte in Zeile 2 usw... . Also jeweils versetzt....
Könnte mir da jemand weiterhelfen?
Vielen Dank
Anzeige
AW: Durch "/" getrennte Wörter in einer Zelle Zählen
15.10.2010 11:38:50
Hajo_Zi
Hallo
Verteilung (2)
 AB
28Probe/Test/Zahlung/Rte4 Wörter

verwendete Formeln
Zelle Formel Bereich
B28 =LÄNGE(A28)-LÄNGE(WECHSELN(A28;"/";""))+1 &" Wörter" 

Tabellendarstellung in Foren Version 5.30


Gruß Hajo
Anzeige
AW: Durch "/" getrennte Wörter in einer Zelle Zählen
15.10.2010 11:57:33
Tobson
Habe vergessen zu sagen, dass ich es als vba code brauche...
AW: Durch "/" getrennte Wörter in einer Zelle Zählen
15.10.2010 11:59:38
Klaus
Hallo Tobson,
als VBA Code:
Range("B28").formulalocal = "=LÄNGE(A28)-LÄNGE(WECHSELN(A28;"/";""))+1"
Grüße,
Klaus M.vdT.
AW: Durch "/" getrennte Wörter in einer Zelle Zählen
15.10.2010 13:04:58
Tobson
Das funzt bei mir aber irgendwie nicht... Typen unverträglich?! Sacht er
Anzeige
AW: Durch "/" getrennte Wörter in einer Zelle Zählen
15.10.2010 11:58:26
Klaus
Hallo Tobson,
solange das Trennzeichen / nicht doppelt vorkommt, ist Hajo's Formel astrein. Ansonsten versuch dich mal mit der Option "Daten - Text in Spalten", nach Trennzeichen /. Damit bekommt jedes Wort eine eigene Zelle. Vielleicht hilft dir das ja auch.
Grüße,
Klaus M.vdT.
AW: Durch "/" getrennte Wörter in einer Zelle Zählen
15.10.2010 12:46:50
Tobson
Erstmal vielen Dank euch beiden...
Habt ihr ne idee wie ich jetzt beispielsweise das zweite Wort aus der Zelle kopieren kann um es in eine neue Spalte in deren ersten Zelle einzufügen? Das dritte Wort dann in der folgenden Spalte in deren zweiter Zelle... usw. Je nach dem wieviele Wörter drinnen sind...
Anzeige
AW: Durch "/" getrennte Wörter in einer Zelle Zählen
15.10.2010 13:19:21
Klaus
Hallo Tobson,
du beschreibst genau das, was ich bereits vorschlug: Text in Spalten.
AW: Durch "/" getrennte Wörter in einer Zelle Zählen
15.10.2010 13:50:19
ransi
Hallo
Keine Ahnung was du für Klimmzüge vorhast, aber ich hab das so verstanden:
Option Explicit


Public Sub test()
Dim strText As String
Dim Arr As Variant
Dim L As Long
strText = "Habt/ihr/ne/idee/wie/ich/jetzt/beispielsweise/das/zweite/Wort/aus/der/Zelle/kopieren/kann"
Arr = Split(strText, "/")
Redim out(UBound(Arr), UBound(Arr))
For L = LBound(Arr) To UBound(Arr)
    out(L, L) = Arr(L)
Next
Range("B1").Resize(UBound(Arr) + 1, UBound(Arr) + 1) = out
End Sub


ransi
Anzeige
AW: Durch "/" getrennte Wörter in einer Zelle Zählen
15.10.2010 13:53:31
Tobson
Ich glaube das löst mein Problem nicht ganz, trotzdem danke Klaus.
Meine Spalte sieht so aus:
"Prob/DEAA"
"Prob/DEAA/Dei_Anl"
"Prob/DEAA/Dei_Anl/Reg"
"Prob/DEAA/Dei_Anl/VE_Anl2"
"Prob/DEAA/Dei_Anl/VE_Anl1"
"Prob/DEAA/Dei_Anl/Kond_Str"
"Prob/DEAA/Ne_Anl"
"Prob/DEAA/Ne_Anl/BS_Verso"
"Prob/DEAA/Ne_Anl/Allg"
Und soll später so aussehen...
Assets
 ABC
1DEAA   
2  Die_Anl 
3    Reg
4    Ve_Anl2
5    Ve_Anl1
6    Kond_Str
7  Ne_Anl 
8    BS_Verso
9    Allg

Tabellendarstellung in Foren Version 5.30


Daher will ich anhand einer Schleife feststellen, wieviele Wörter in der jeweiligen Zeile der ursprünglichen Spalte stehen, um dann gezielt das letzte Wort in eine neue Spalte einfügen (die neue Spalte ergibt sich aus der Anzahl der Wörter minus 1, da ich das erste wort nicht verwende)
Anzeige
AW: Durch "/" getrennte Wörter in einer Zelle Zählen
15.10.2010 14:31:03
Klaus
Hallo Tobson,
wenn du genau das in Spalte A schreibst (ohne die Anführungsstriche!!), dann lass mal folgendes Makro laufen.
Sub Ummodeln()
Dim r As Range
Dim t As String
With ActiveSheet
.Columns("A:A").TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
:="/", FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1)), _
TrailingMinusNumbers:=True
.Columns(1).ClearContents
'Im Beispiel wird das Wort "Prob" nicht in der Ausgabe genannt!
For Each r In .UsedRange
'r.Select
If t Like "*" & r.Value & "*" Then r.ClearContents
t = t & r.Value
Next r
End With
End Sub

Anzeige
AW: Durch "/" getrennte Wörter in einer Zelle Zählen
15.10.2010 15:15:46
Tobson
Das sieht schon richtig gut aus. Das Problem ist, dass die Texte in Anführungszeichen stehen... und dann gehts ja leider nicht.
hab auch vergessen zu sagen, dass meine Spalte mit den Bezeichnungen nicht die Spalte A ist sondern AA also da kommen noch einige davor. Bei der Ausführung des Codes werden die Spalten davor gelöscht! Wo in dem Code ist das realisiert?
Hatte mir das eigentlich so gedacht, dass ich die Struktur in eine neue Tabelle kopieren und die Originaltabelle nicht verändere... .
Anzeige
Suchen / Ersetzen
18.10.2010 09:45:16
Klaus
Moin Tobson,
die vohandenen Anführungsstrriche aus einem String zu entfernen dürfte ja wohl kein Problem sein?
Ansätze:
=WECHSELN(A1;""";""), suchen+ersetzen, =TEIL(A1;2;länge(A1)-1) [....]
Die Spalte A wird im o.g. code referenziert durch:
Columns("A:A")
Columns(1).
ersetze durch AA bzw durch 27.
Grüße,
Klaus M.vdT.
Anzeige
AW: Durch "/" getrennte Wörter in einer Zelle Zählen
15.10.2010 18:49:58
mpb
Hallo,
kopiere alles in eine neue Tabelle. Führe Daten-Text in Spalten mit dem Trennzeichen / aus. Anschließend ein Makro, das alle Zeilen durchläuft und sämtliche Zellinhalte (bzw. alles bis Spalte AA) links von der am weitesten rechts liegenden besetzten Zelle löscht.
Gruß
Martin
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Wörter in einer Zelle zählen und extrahieren


Schritt-für-Schritt-Anleitung

Um die Anzahl der durch "/" getrennten Wörter in einer Zelle zu zählen, kannst Du folgende Excel-Formel verwenden:

=LÄNGE(A1)-LÄNGE(WECHSELN(A1;"/";""))+1
  1. Platziere die Formel in einer Zelle (z.B. B1), um die Anzahl der Wörter in A1 zu zählen.
  2. Wenn Du die Anzahl der Wörter in einer Spalte zählen möchtest, ziehe die Formel nach unten.
  3. Um das zweite Wort in eine neue Spalte zu übertragen, kannst Du die Funktion TEIL verwenden. Die Formel für das zweite Wort könnte so aussehen:
=TEIL(A1;FINDEN("/";A1)+1;FINDEN("/";A1;FINDEN("/";A1)+1)-FINDEN("/";A1)-1)

Häufige Fehler und Lösungen

  • Fehler: Typen unverträglich

    • Lösung: Achte darauf, dass die Zelle, die Du analysierst, den richtigen Datentyp hat (Text). Überprüfe, ob Anführungszeichen oder andere unerwartete Zeichen in der Zelle vorhanden sind.
  • Fehler: Formel funktioniert nicht

    • Lösung: Stelle sicher, dass Du das richtige Trennzeichen verwendest und dass die Formel korrekt eingegeben wurde. Überprüfe auch, ob die Zelle, auf die Du verweist, tatsächlich Daten enthält.

Alternative Methoden

Anstelle einer Formel kannst Du auch die Funktion "Daten - Text in Spalten" verwenden. Hierbei wird der Inhalt der Zelle in mehrere Zellen aufgeteilt, basierend auf dem Trennzeichen "/". Das hat den Vorteil, dass jedes Wort in einer eigenen Zelle steht.

  1. Wähle die Zelle oder Spalte aus, die Du aufteilen möchtest.
  2. Gehe zu Daten > Text in Spalten.
  3. Wähle Getrennt und setze "/" als Trennzeichen.
  4. Klicke auf Fertigstellen.

Praktische Beispiele

Angenommen, Du hast in Zelle A1 den Text "Probe/Test/Zahlung" stehen. Um die Anzahl der Wörter zu zählen, gib die Formel in Zelle B1 ein:

=LÄNGE(A1)-LÄNGE(WECHSELN(A1;"/";""))+1

Wenn Du das zweite Wort extrahieren möchtest, könntest Du in Zelle C1 folgende Formel verwenden:

=TEIL(A1;FINDEN("/";A1)+1;FINDEN("/";A1;FINDEN("/";A1)+1)-FINDEN("/";A1)-1)

Das Ergebnis in C1 sollte "Test" sein.


Tipps für Profis

  • Verwende VBA, um die Anzahl der Wörter zu zählen und sie automatisch in separate Zellen zu übertragen. Hier ein einfaches Beispiel:
Sub WorteZählen()
    Dim r As Range
    Dim arr() As String
    Dim i As Integer
    Dim ws As Worksheet
    Set ws = ActiveSheet

    For Each r In ws.Range("A1:A10") ' Anpassung des Bereichs nach Bedarf
        arr = Split(r.Value, "/")
        For i = LBound(arr) To UBound(arr)
            ws.Cells(r.Row, i + 2).Value = arr(i) ' Füllt die Zellen B, C, D, ... mit den Wörtern
        Next i
    Next r
End Sub
  • Stelle sicher, dass Du die richtigen Zellreferenzen verwendest, besonders wenn Deine Daten nicht in Spalte A beginnen.

FAQ: Häufige Fragen

1. Kann ich auch die Häufigkeit eines bestimmten Wortes zählen?
Ja, Du kannst die Funktion ZÄHLENWENN verwenden, um die Anzahl der Vorkommen eines bestimmten Wortes in einer Spalte zu zählen. Zum Beispiel:

=ZÄHLENWENN(A:A;"*DeinWort*")

2. Wie kann ich die Wörter in einer neuen Spalte auflisten?
Mit der Funktion "Text in Spalten" kannst Du die Wörter in separate Zellen aufteilen, oder Du kannst VBA verwenden, um die Wörter in eine neue Tabelle zu übertragen.

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