Wörter zählen im langen text

Trimx

Lieutenant
Registriert
Mai 2007
Beiträge
602
Hallo zusammen möchte gerne eine vbs mit Editor erstellen wo ich einen Text einfügen kann wo dann die Anzahl bestimmter Wörter mir angezeigt werden also wie oft kommt Auto im riesen text vor .
Leider bin ich etwas stark eingerostet habe da aber schon was gefunden die frage ist aber wo Text eingefugt werden soll ? denn wenn ich es als vbs so speichere und ausführe kommt nur ne Fehlermeldung :(

Code:
Sub WordCount(DeinWort DeinWort)
Dim lngWords        As Long
   lngWords = ActiveDocument.Words.Count

   ActiveDocument.Content.Find.Execute _
   FindText:="DeinWort", _
   ReplaceWith:="", _
   Replace:=wdReplaceAll

   MsgBox lngWords - ActiveDocument.Words.Count
End Sub
 
fehler.jpg

Das ist der fehler ganz vergessen

habe auch das gefühl ist ein totaler falscher Ansatz :( brauche einfach einfach scribt der mir anzeigt wie oft das wort Auto im text vorkommt leider fehlet mir ein Ansatz wie mann sowas einfach hinbekommen kann
 
Zuletzt bearbeitet:
@Trimx wc ist ein Linux-Tool, keine Funktion in Visual Basic. Wenn du das selbst programmieren willst, dann musst du ein Dictionary/eine Map anlegen und als Key jeweils das Wort eintragen, wenn es noch nicht in dem Dict/der Map ist, und als Value 0 (wenn nicht in Dict/Map) respektive Value inkrementieren, wenn es schon in dem Dict/der Map ist.

Spartanisches Beispiel ohne Error-Handling (und ohne ignorieren von Kommata) usw. in Python 3:
Code:
import sys

def count(seq):
    counts = dict()
    for i in seq.split():
        if i in counts:
            counts[i] += 1
        else:
            counts[i] = 1
    return counts

if __name__ == '__main__':
    if len(sys.argv) == 2:
        with open(sys.argv[1]) as txtfile:
            print(count(txtfile.read()))
    else:
        print("Usage: count.py <path/to/txtfile>")
 
Zurück
Oben