DetectLanguage Method

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


expression Required. An expression that returns a Document, Range, or Selection 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

Applies to | Document Object | Range Object | Selection Object

See Also | CheckLanguage Property | LanguageDetected Property