Excel: Häufigstes Wort in der Spalte anzeigen?

2 Antworten

Steht denn in jeder Zelle ein oder stehen pro Zelle mehrere Worte?

Du könntest folgendes machen.

  • alle Werte einer Spalte in eine Hilfsspalte kopieren
  • Daten - Duplikate entfernen (und bei Bedarf sortieren)
  • und zählen lassen mit der Funktion =Zählenwenn (Formel runterkopieren)

Bild zum Beitrag

 - (Computer, Microsoft Excel, Formel)
dasistechtso 
Fragesteller
 22.12.2021, 16:12

Pro Zelle steht ein Wort mit einer Zahl, so steht z.B. in einer Zelle "S4". Kann man sowas auch in Google Docs Tabellen machen?

0
dasistechtso 
Fragesteller
 22.12.2021, 18:24

Vielen Dank, aber ich würde gerne ja folgendes haben, https://ibb.co/Yfj1QZT .

Unter "Häufigste Linie" soll die am häufigsten genannte Linie angezeigt werden, hier jetzt beispielsweise (siehe Bild) die S4. Beim Wochentag genau das gleiche.

Sorry für das Missverständnis :)

0
dasistechtso 
Fragesteller
 22.12.2021, 18:57
@GutenTag2003

Vielen Dank, aber nein. Es soll mir nicht die Anzahl der einzelnen Linien anzeigen, sondern es soll die am häufigsten genannte Linie in dieser Spalte als Text in einer Zelle angezeigt werden. So müsste bei mir im Bild oben in der Zelle "häufigste Linie" die S4 als Text angezeigt werden. :)

0
dasistechtso 
Fragesteller
 22.12.2021, 19:17
@GutenTag2003

Vielen Dank. Kann man es nicht direkt aus der Spalte entnehmen, ohne dafür noch extra eine Spalte zu machen?

0
GutenTag2003  22.12.2021, 19:27
@dasistechtso

Die Zählung muss ja nach einem "'Wert / Begriff" erfolgen. Der muss durch Zählung der unterschiedlichen Begriffe ermittelt werden. Bei Zahlen geht das in einem.

0

Eine Prozedur, welche die Wörter zählt, könnte so aussehen:

Sub optimierer()
   Call ZaehleWoerter(Tabelle1.Range("A:A"), Tabelle1.Range("C1"))
End Sub

Sub ZaehleWoerter(Quelle As Range, PivotZiel As Range)
   Dim Woerter() As String
   Dim Wort As Variant
   Dim Spalte As Integer
   Dim Suche As Range
   Dim Zeile As Integer
   Dim Zelle As Range
   Dim ZellVal As String

   Zeile = PivotZiel.Row
   Spalte = PivotZiel.Column
   For Each Zelle In Quelle
       ZellVal = Replace(Replace(Replace(Zelle.Value, ",", ""), ".", ""), "!", "")
       Woerter = Split(ZellVal, " ")
       For Each Wort In Woerter
           Set Suche = Range(PivotZiel, Cells(Zeile, Spalte)).Find(Wort)
           If Suche Is Nothing Then
               Cells(Zeile, Spalte).Value = Wort
               Cells(Zeile, Spalte + 1).Value = 1
               Zeile = Zeile + 1
           Else
               Suche.Offset(0, 1).Value = Suche.Offset(0, 1).Value + 1
           End If
       Next
   Next
End Sub

Einen der häufigsten Werte kannst du mit einer gewöhnlichen Excelfunktion ermitteln:

=INDEX(C:C;MAX(ZEILE(D:D)*(D:D=MAX(D:D))))

(Eingabe mit Strg+Shift+Enter abschließen)