Registriert seit: 09.03.2023
Version(en): 2016
Hi in unserem Plan muss ich die Anzahl von Wörtern suchen, die nicht durchgestrichen sind?!
Das Wort steht leider mal als normales Wort in der Arbeitsmappe und mal ist es durchgestrichen, ich möchte nur die Wörter zählen die nicht durchgestrichen sind.
Über suchen kann ich die Wörter zählen lassen und finden, in der Auflistung unten im suchen Feld, sind dann leider auch die durchgestrichenen Wörter mit aufgezählt, nur leider sind die komischer Weise dort nicht durchgestrichen, sodass ich sie mir nur umständlich in jedem Tabellenblatt auszählen müsste.
Gibt es bei Suchen so eine Funktion oder Trick dass die Funktion nur die nicht durchgestrichenen Wörter sucht??
Vielleicht kann jemand helfen
Danke sehr!!
Registriert seit: 05.09.2019
Version(en): Office 365
24.07.2025, 11:02
(Dieser Beitrag wurde zuletzt bearbeitet: 24.07.2025, 11:03 von UweD.)
Nachfrage:
1) Sind die Wörter einzeln in je einer Zelle 2) oder steht ein ganzer Text in einer Zelle und es sollen die Worte darin gezählt werden
sind es mehrere Zellen, die durchsucht werden sollen?
LG UweD
Registriert seit: 12.08.2019
Version(en): Office 365
Hallo,
zu bedenken ist auch: - in Excel kann die ganze ZELLE durchgestrichen werden oder - nur einzelne Buchstaben einer Zelle oder eines Wortes
Was ist, wenn nur ein Teil des Wortes durchgestrichen ist?
Gruß Sigi
Registriert seit: 05.09.2019
Version(en): Office 365
(24.07.2025, 11:02)UweD schrieb: Nachfrage:
1) Sind die Wörter einzeln in je einer Zelle 2) oder steht ein ganzer Text in einer Zelle und es sollen die Worte darin gezählt werden
sind es mehrere Zellen, die durchsucht werden sollen?
LG UweD Angenommen 1) Daten stehen einzeln in Zellen von Spalte B Code: Sub Zählen() Dim SP As Integer, Zelle As Variant, Anz As Long SP = 2 'Daten stehen in B If WorksheetFunction.CountA(Columns(SP)) = 0 Then MsgBox "Keine Texte gefunden" Exit Sub End If For Each Zelle In Columns(SP).SpecialCells(xlCellTypeConstants, 3) If Zelle.Font.Strikethrough = False Then Anz = Anz + 1 End If Next MsgBox Anz & " NICHTDurchgestrichene Wörter gefunden" End Sub
Registriert seit: 09.03.2023
Version(en): 2016
Es stehen noch andere Wörter in dieser Zelle
Registriert seit: 05.09.2019
Version(en): Office 365
(24.07.2025, 11:21)Franziose schrieb: Es stehen noch andere Wörter in dieser Zelle Hallo nochmal Dann so? Es wird vorausgesetzt, - das immer das ganze Wort in dem Text (nicht) durchgestrichen ist - Die einzelnen Worte durch Leerzeichen getrennt sind Code: Sub Zählen2() Dim SP As Integer, Zelle As Variant, Anz As Long, Arr Dim i As Integer, A As Integer, E As Integer SP = 2 'Daten stehen in B If WorksheetFunction.CountA(Columns(SP)) = 0 Then MsgBox "Keine Texte gefunden" Exit Sub End If For Each Zelle In Columns(SP).SpecialCells(xlCellTypeConstants, 3) 'nur Zellen mit Inhalt Arr = Split(Zelle, " ") For i = LBound(Arr) To UBound(Arr) A = InStr(Zelle, Arr(i)) 'Start E = Len(Arr(i)) 'Länge des Wortes If Arr(i) <> "" And Zelle.Characters(Start:=A, Length:=E).Font.Strikethrough = False Then Anz = Anz + 1 'Zählen End If Next Next MsgBox Anz & " NICHTDurchgestrichene Wörter gefunden" End Sub
LG UweD
Folgende(r) 1 Nutzer sagt Danke an UweD für diesen Beitrag:1 Nutzer sagt Danke an UweD für diesen Beitrag 28
• Franziose
Registriert seit: 09.03.2023
Version(en): 2016
24.07.2025, 11:51
(Dieser Beitrag wurde zuletzt bearbeitet: 24.07.2025, 12:04 von Franziose.)
Danke UWe,
das sieht nicht aus wie eine Formel??
ich muss das als Modul in Vísual Basic einfügen, oder?
In welche Zelle muss ich das Suchwort schreiben?
Ich habe wohl vergessen zu beschreiben wo in jedem Tabellenblatt gesucht werden soll.
In jedem Tabellenblatt soll der Bereich B2:D100 durchsucht werden
Das gesuchte Wort würde ich in Zelle A1 schreiben
Registriert seit: 15.04.2018
Version(en): 2013
Hi kannst du mal ne Beispieldatei hochladen die zeigt, wie die Werte vorliegen und wie du dir für dieses Beispiel das Ergebnis wünscht? Das macht es leichter, einen entsprechenden Code zu schreiben. um VBA wirst du hier vermutlich nicht herumkommen, da Excel nicht für das Auswerten von Zellformaten konzipiert ist. Wenn du dann auch nicht die ganze Zelle als durchgestrichen formatiert hast sondern nur einzelne Wörter innerhalb der Zelle, wird es nochmal komplizierter.
Gruß Daniel
Registriert seit: 05.09.2019
Version(en): Office 365
(24.07.2025, 11:51)Franziose schrieb: Danke UWe,
das sieht nicht aus wie eine Formel??
ich muss das als Modul in Vísual Basic einfügen, oder?
In welche Zelle muss ich das Suchwort schreiben?
Ich habe wohl vergessen zu beschreiben wo in jedem Tabellenblatt gesucht werden soll.
In jedem Tabellenblatt soll der Bereich B2:D100 durchsucht werden
Das gesuchte Wort würde ich in Zelle A1 schreiben Hallo nochmal Per Formel bekommst du das nicht hin. Deshalb VBA - Rechtsclick auf den Tabellenblattreiter - Code anzeigen - rechts den Code einfügen Bei Änderungen in A1 läuft der Code automatisch ab Code: Private Sub Worksheet_Change(ByVal Target As Range) Dim RNG As Range, Zelle As Variant, Anz As Integer, Arr Dim i As Integer, A As Integer, E As Integer If Not Intersect(Target, Range("A1")) Is Nothing Then Set RNG = Range("B2:D100") 'Daten stehen hier If WorksheetFunction.CountA(RNG) = 0 Then MsgBox "Keine Texte gefunden" Exit Sub End If For Each Zelle In RNG.SpecialCells(xlCellTypeConstants, 3) 'nur Zellen mit Inhalt If InStr(Zelle, Trim(Target)) > 0 Then 'Ist Wort in Zelle? Arr = Split(Zelle, " ") For i = LBound(Arr) To UBound(Arr) If Trim(Arr(i)) = Trim(Target) Then 'Ist Teilstring = Suchwort A = InStr(Zelle, Arr(i)) 'Start E = Len(Arr(i)) 'Länge des Wortes If Arr(i) <> "" And Zelle.Characters(Start:=A, Length:=E).Font.Strikethrough = False Then Anz = Anz + 1 'Zählen End If End If Next End If Next MsgBox Anz & "x '" & Target & "' NICHTdurchgestrichen gefunden" End If End Sub
LG UweD
Folgende(r) 1 Nutzer sagt Danke an UweD für diesen Beitrag:1 Nutzer sagt Danke an UweD für diesen Beitrag 28
• Franziose
Registriert seit: 09.03.2023
Version(en): 2016
Hallo Uwe,
toll, das ist so schon richtig, leider ist es aber so dass dieser Code nur das Tabellenblatt durchsucht, in dem der Code von mir reinkopiert worden ist, alle anderen Tabellenblätter bleiben von der Zählung unbetroffen??
Oder könnte ich auch alle Tabellenblätter aktivieren und dann den code in den Editor kopieren??
|