Range.DetectLanguage Method (Word)
Analyzes the specified text to determine the language that it is written in.
expression Required. A variable that represents a 'Range' object.
The results of the DetectLanguage method are stored in the LanguageID property on a character-by-character basis. To read the LanguageID property, you must first specify a selection or range of text.
When applied to a Document object, the DetectLanguage method checks all available text in the document (headers, footers, text boxes, and so forth). If the specified text contains a partial sentence, the selection or range is extended to the end of the sentence.
If the DetectLanguage method has already been applied to the specified text, the LanguageDetected property is set to True . To reevaulate the language of the specified text, you must first set the LanguageDetected property to False .
For more information about automatic language detection, see About automatic language detection .
This example checks the active document to determine the language it's written in and then displays the result.
With ActiveDocument If .LanguageDetected = True Then x = MsgBox("This document has already " _ & "been checked. Do you want to check " _ & "it again?", vbYesNo) If x = vbYes Then .LanguageDetected = False .DetectLanguage End If Else .DetectLanguage End If If .Range.LanguageID = wdEnglishUS Then MsgBox "This is a U.S. English document." Else MsgBox "This is not a U.S. English document." End If End With