Range.DetectLanguage method (Word)

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

Syntax

expression. DetectLanguage

expression Required. A variable that represents a Range object.

Remarks

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 reevaluate 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 .

Example

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

See also

Range Object

Support and feedback

Have questions or feedback about Office VBA or this documentation? Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.