Tip

Use Msword Spellchecker

In Microsoft Word gibt es eine sch?ne Rechtschreibpr?fung, die auch f?r eigene
Programmen benutzt werden kann. Ein einfacher Aufruf mit (mindestens) einem
Parameter reicht f?r die Funktionalit?t aus. R?ckgabewert ist ein Boolean, der
aussagt, ob der ?bergebene String Rechtschreibfehler enth?lt - einfacher geht
es wohl kaum.

Der ben?tigte Aufruf ist wie folgt prototypisiert:

Function CheckSpelling
(Word As String, [CustomDictionary], [IgnoreUppercase],
[MainDictionary], [CustomDictionary2], [CustomDictionary3],
[CustomDictionary4], [CustomDictionary5], [CustomDictionary6],
[CustomDictionary7], [CustomDictionary8], [CustomDictionary9],
[CustomDictionary10]) As Boolean

Wie man sieht, sind durch die CustomDictionaries gen?gend M?glichkeiten f?r
zus?tzlich anzuwendende, pers?nliche Word-W?rterb?cher (*.dic) m?glich (dazu
m?ssen nat?rlich erst unter Word eigene Dictionaries erstellt worden sein;
n?heres hierzu findet man in der Dokumentation zu Word. Ohne diese Angaben wird
die Standard-Einstellung von Word ?bernommen.

F?r das folgende Beispiel wurde auf einem Formular eine Textbox (Text1) f?r den
zu pr?fenden Text, ein Button (Command1) zum Aufruf der Funktion und als
letztes eine CheckBox (Check1) zur Anzeige des Ergebnisses plaziert.

In den Verweisen ist die "Microsoft Word 8.0 Object Library" markiert, denn
ohne Word geht es (noch) nicht. Ob dies auch mit ?lteren Word-Versionen
funktioniert, konnte mangels Vorhandensein solcher nicht vom Autor getestet
werden. Da sich aber gerade bei Word recht viel getan hat, wird ein Versuch
vermutlich schiefgehen(?):

Sub Click(Source As Button)
'Dim wd As WordApplication
Dim b As Variant
Set wd = CreateObject("Word.Application")
b = wd.CheckSpelling("Microsofft", , True)
If b = True Then
Msgbox 1
Else
Msgbox 0
End If
wd.Quit
End Sub

Im Beispiel wurde der Schalter f?r die Abschaltung der Gro?-/Kleinschreibung
(IgnoreUppercase) auf True gesetzt. Die Angabe eines besonderen Dictionary
erfolgte nicht. Um die Arbeitsweise zu erkennen, kann man etwa die Zahl "F?nf"
in allen denkbaren Kombinationen (gro?/klein, mit/ohne Umlaute) ausprobieren.
Damit ist der Weg offen, diese Funktion auch in eigenen Programmen einzusetzen.
Sei es der Rechtschreibtrainer f?r die Kleinen oder die Nachbildung eines
Brettspiels (z.B. "Scrabble").

Nicht vergessen sollte man ?brigens das wd.Quit am Ende - ansonsten wird man
mit h??lichen Fehlermeldungen und ?berfl?ssigen Eintr?gen im Taskmanager
"belohnt".

This was first published in November 2000

There are Comments. Add yours.

 
TIP: Want to include a code block in your comment? Use <pre> or <code> tags around the desired text. Ex: <code>insert code</code>

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy
Sort by: OldestNewest

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:

Disclaimer: Our Tips Exchange is a forum for you to share technical advice and expertise with your peers and to learn from other enterprise IT professionals. TechTarget provides the infrastructure to facilitate this sharing of information. However, we cannot guarantee the accuracy or validity of the material submitted. You agree that your use of the Ask The Expert services and your reliance on any questions, answers, information or other materials received through this Web site is at your own risk.