Range.DetectLanguage Method (Word)

Analyzes the specified text to determine the language that it is written in.


expression. DetectLanguage

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 
 End If 
 End If 
 If .Range.LanguageID = wdEnglishUS Then 
 MsgBox "This is a U.S. English document." 
 MsgBox "This is not a U.S. English document." 
 End If 
End With

See also

Range Object