Classe Language - langue (Word VBA)

La classe Language représente la langue utilisée pour les vérifications linguistiques et la mise en forme dans Microsoft Word.

Pour utiliser une variable de classe Language, elle doit d'abord être instanciée, par exemple

Dim lng as Language
Set lng = Languages(Index:=1)

Les variables du type Language peuvent être définies à l'aide de la procédure Languages.Item

For Each

Voici un exemple de traitement des éléments Language dans une collection

Dim lng As Language
For Each lng In Languages
	
Next lng

ActiveGrammarDictionary

Renvoie un objet dictionary qui représente le dictionnaire de grammaire actif correspondant à la langue spécifiée.

Si aucun dictionnaire de grammaire n’est installé pour la langue spécifiée, cette propriété renvoie la valeur Nothing.

Dim lngLanguage As Long 
Dim dicGrammar As Dictionary 
 
lngLanguage = Selection.LanguageID 
Set dicGrammar = Languages(lngLanguage).ActiveGrammarDictionary 
MsgBox dicGrammar.Path & Application.PathSeparator & dicGrammar.Name

ActiveHyphenationDictionary

Renvoie un objet dictionary qui représente le dictionnaire de coupure de mots actif correspondant à la langue spécifiée.

Si aucun dictionnaire de coupure de mots n’est installé pour la langue spécifiée, cette propriété renvoie la valeur Nothing.

Dim lngLanguage As Long 
Dim dicHyphen As Dictionary 
 
lngLanguage = Selection.LanguageID 
Set dicHyphen = Languages(lngLanguage).ActiveHyphenationDictionary 
If dicHyphen Is Nothing Then 
 MsgBox "No hyphenation dictionary installed!" 
Else 
 MsgBox dicHyphen.Path & Application.PathSeparator & dicHyphen.Name 
End If

ActiveSpellingDictionary

Renvoie un objet dictionary qui représente le dictionnaire d'orthographe actif correspondant à la langue spécifiée.

Si aucun dictionnaire d'orthographe n'est installé pour la langue spécifiée, cette propriété renvoie la valeur Nothing.

Dim lngLanguage As Long 
Dim dicSpelling As Dictionary 
 
lngLanguage = Selection.LanguageID 
Set dicSpelling = Languages(lngLanguage).ActiveSpellingDictionary 
If dicSpelling Is Nothing Then 
 MsgBox "No spelling dictionary installed!" 
Else 
 MsgBox dicSpelling.Path & Application.PathSeparator _ 
 & dicSpelling.Name 
End If 

ActiveThesaurusDictionary

Renvoie un objet dictionary qui représente le dictionnaire des synonymes actif correspondant à la langue spécifiée.

Si aucun dictionnaire des synonymes n’est installé pour la langue spécifiée, cette propriété renvoie la valeur Nothing.

Dim lngLanguage As Long 
Dim dicThesaurus As Dictionary 
 
lngLanguage = Selection.LanguageID 
Set dicThesaurus = Languages(lngLanguage).ActiveThesaurusDictionary 
If dicThesaurus Is Nothing Then 
 MsgBox "No thesaurus dictionary installed!" 
Else 
 MsgBox dicThesaurus.Path & Application.PathSeparator _ 
 & dicThesaurus.Name 
End If 

DefaultWritingStyle

Cette propriété renvoie ou définit la valeur par défaut utilisée par le vérificateur de grammaire pour la langue spécifiée de style d'écriture.

This property controls the global setting for the writing style. La propriété ActiveWritingStyle définit le style d'écriture pour chaque langue dans un document.

Dim lngLanguage As Long 
 
lngLanguage = Selection.LanguageID 
Msgbox Languages(lngLanguage).DefaultWritingStyle

ID

Renvoie un numéro qui identifie la langue spécifiée. Ici on trouve valeurs possible pour WdLanguageID.

Selection.LanguageID = Languages("Icelandic").ID

Name

Renvoie le nom de l'objet spécifié.

Dim strName As String
strName = Languages(1).Name

NameLocal

Renvoie le nom d'une langue outil de vérification linguistique dans la langue de l'utilisateur.

MsgBox Languages(wdGerman).NameLocal 
MsgBox Languages(wdGerman).Name

SpellingDictionaryType

Cette propriété renvoie ou définit le type d'outil de vérification linguistique. Ici on trouve valeurs possible pour WdDictionaryType.

Vous pouvez utiliser cette propriété pour passer du dictionnaire d'orthographe actif à l'un des dictionnaires complémentaires disponibles pouvant être utilisés dans Word. Il se peut que certaines des constantes énumérées ci-dessus ne soient pas disponibles, selon la prise en charge de langue (anglais (États-Unis), par exemple) que vous avez sélectionnée ou installée.

myType = Languages(wdEnglishUS).SpellingDictionaryType

WritingStyleList

Renvoie un tableau de chaînes contenant les noms de tous les styles d'écriture disponibles pour la langue spécifiée.

Sub WritingStyles() 
 Dim WrStyles As Variant 
 Dim i As Integer 
 
 WrStyles = Languages(wdEnglishUS).WritingStyleList 
 For i = 1 To UBound(WrStyles) 
 MsgBox WrStyles(i) 
 Debug.Print WrStyles(i) & " [" & Trim(Str$(i)) & "]" 
 Next i 
End Sub