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)
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
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
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