VBA – Word: Textsprache um-/abschalten

Beschreibung

Um die Textsprache in Word um- bzw. abzuschalten, was z.B. für die automatische Rechtschreib- und Grammatikprüfung sinnvoll ist, kann man die folgenden simplen Word-Makros verwenden.
 Die Funktion entspricht der gleichen Funktion, die über das Wordmenü (bis Word 2003) folgendermaßen zu erreichen ist: „Extras“ => „Sprache“ => „Sprache festlegen“.


Sourcecode

Funktionsübersicht

Funktionen

Textsprache auf „Deutsch“ umschalten

Public Sub SpracheDeutsch()
    ' Bei Fehlern wird zur Sprungmarke NoDocumentOpen gesprungen und damit die Funktion beendet.
    On Error GoTo NoDocumentOpen

    ' Falls keine Datei geöffnet ist, wird zur Sprungmarke NoDocumentOpen gesprungen und damit die Funktion beendet. Die Prüfung, ob eine Datei geöffnet ist, wird über die Länge des Dateinamens des aktiven Dokuments durchgeführt.
    If Len(ActiveDocument.Name) = 0 Then GoTo NoDocumentOpen

    ' Auswahl der Sprache "Deutsch" = deutsch.
    ' Mögliche Werte findet man in der VBA-Hilfe, wenn man den Suchbegriff "LanguageID" eingibt und dort auf "WdLanguageID-Wert mit Lese-/Schreibzugriff." klickt.
    Selection.LanguageID = wdGerman
    'Hiermit wird die automatische Spracherkennung abgeschaltet. Word ändert die Sprache also nicht selbständig in eine andere.
    Application.CheckLanguage = False

NoDocumentOpen:
End Sub

Textsprache auf „Englisch (UK)“ umschalten

Public Sub SpracheEnglischUK()
    ' Bei Fehlern wird zur Sprungmarke NoDocumentOpen gesprungen und damit die Funktion beendet.
    On Error GoTo NoDocumentOpen

    ' Falls keine Datei geöffnet ist, wird zur Sprungmarke NoDocumentOpen gesprungen und damit die Funktion beendet. Die Prüfung, ob eine Datei geöffnet ist, wird über die Länge des Dateinamens des aktiven Dokuments durchgeführt.
    If Len(ActiveDocument.Name) = 0 Then GoTo NoDocumentOpen

    ' Auswahl der Sprache "Englisch (UK)" = englisch (britisch).
    ' Mögliche Werte findet man in der VBA-Hilfe, wenn man den Suchbegriff "LanguageID" eingibt und dort auf "WdLanguageID-Wert mit Lese-/Schreibzugriff." klickt.
    Selection.LanguageID = wdEnglishUK
    'Hiermit wird die automatische Spracherkennung abgeschaltet. Word ändert die Sprache also nicht selbständig in eine andere.
    Application.CheckLanguage = False

NoDocumentOpen:
End Sub

Textsprache auf „Englisch (US)“ umschalten

Public Sub SpracheEnglischUK()
    ' Bei Fehlern wird zur Sprungmarke NoDocumentOpen gesprungen und damit die Funktion beendet.
    On Error GoTo NoDocumentOpen

    ' Falls keine Datei geöffnet ist, wird zur Sprungmarke NoDocumentOpen gesprungen und damit die Funktion beendet. Die Prüfung, ob eine Datei geöffnet ist, wird über die Länge des Dateinamens des aktiven Dokuments durchgeführt.
    If Len(ActiveDocument.Name) = 0 Then GoTo NoDocumentOpen

    ' Auswahl der Sprache “Englisch (US)” = englisch (amerikanisch).
    ' Mögliche Werte findet man in der VBA-Hilfe, wenn man den Suchbegriff "LanguageID" eingibt und dort auf "WdLanguageID-Wert mit Lese-/Schreibzugriff." klickt.
    Selection.LanguageID = wdEnglishUS
    'Hiermit wird die automatische Spracherkennung abgeschaltet. Word ändert die Sprache also nicht selbständig in eine andere.
    Application.CheckLanguage = False

NoDocumentOpen:
End Sub

Rechtschreib- und Grammatikprüfung abschalten

Public Sub RechtschreibUndGrammatikprüfungAbschalten()
    ' Bei Fehlern wird zur Sprungmarke NoDocumentOpen gesprungen und damit die Funktion beendet.
    On Error GoTo NoDocumentOpen

    ' Falls keine Datei geöffnet ist, wird zur Sprungmarke NoDocumentOpen gesprungen und damit die Funktion beendet. Die Prüfung, ob eine Datei geöffnet ist, wird über die Länge des Dateinamens des aktiven Dokuments durchgeführt.
    If Len(ActiveDocument.Name) = 0 Then GoTo NoDocumentOpen

    ' Die Rechtschreib- und Grammatikprüfung wird für den markierten Text deaktiviert.
    Selection.NoProofing = True

NoDocumentOpen:
End Sub