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
Можно ли узнать язык Ворд-документа?
Не хочется проверять вхождение английских символов в первую попавшуюся строку. Может есть более интеллигентный вариант?
проверить LanguageID
И все равно спасибо за подсказочку.
Сделал вот так:
ActiveDocument.Words(1).Characters(1).Select
If Asc(Selection) < 192 Then язык английский
CheckLanguage чему равно?
Цитата: HookEst
CheckLanguage чему равно?
- 1049/2057!
В моем первом варианте проверялся язык сразу всего дока, а там были и кавычки и пр. Поэтому и не определялось. А когда решил проверить только например второе слово, то все заработало:
Цитата:
With ActiveDocument.Words(2)
.DetectLanguage
If .LanguageID = wdEnglishUK Then
MsgBox .LanguageID
MsgBox "This is Engl"
Else
MsgBox .LanguageID
MsgBox "This is not Engl"
End If
End With
.DetectLanguage
If .LanguageID = wdEnglishUK Then
MsgBox .LanguageID
MsgBox "This is Engl"
Else
MsgBox .LanguageID
MsgBox "This is not Engl"
End If
End With
Отлично, большое спасибо!