Klasse SynonymInfo (Word VBA)

Die Klasse SynonymInfo stellt die Informationen über Synonyme, Antonyme, ähnliche Begriffe oder ähnliche Ausdrücke für den angegebenen Bereich oder eine bestimmte Zeichenfolge dar.

Set

Um eine SynonymInfo -Klassenvariable zu verwenden, muss sie zuerst instanziert werden, beispielsweise

Dim sio as SynonymInfo
Set sio = Dim strWord As String: strWord = 
SynonymInfo(Word:=strWord)

Die folgenden Prozeduren können zum Festlegen der SynonymInfo Klassenvariablen verwendet werden : Application.SynonymInfo und Range.SynonymInfo

AntonymList

Gibt eine Liste von Antonymen für das Wort oder den Ausdruck zurück.

Die AntonymList-Eigenschaft ist eine Eigenschaft des SynonymInfo-Objekts, das entweder von einem Bereich oder von der Anwendung zurückgegeben werden kann.

Dim arrayAntonyms As Variant 
Dim intLoop As Integer 
 
arrayAntonyms = SynonymInfo(Word:="big", _ 
 LanguageID:=wdEnglishUS).AntonymList 
For intLoop = 1 To UBound(arrayAntonyms) 
 MsgBox arrayAntonyms(intLoop) 
Next intLoop

Found

True , wenn der Thesaurus Synonyme, Antonyme, verwandte Wörter oder verwandte Ausdrücke für das Wort oder den Ausdruck findet.

Dim siTemp As SynonymInfo 
 
Set siTemp = SynonymInfo(Word:="authorize", _ 
 LanguageID:=wdEnglishUS) 
If siTemp.Found = True Then 
 Msgbox "The thesaurus has suggestions." 
Else 
 Msgbox "The thesaurus has no suggestions." 
End If

MeaningCount

Gibt die Anzahl der Einträge in der Liste der Bedeutungen zurück, die im Thesaurus für das Wort oder den Ausdruck gefunden wurden.

Jede Bedeutung repräsentiert eine eindeutige Liste von Synonymen für das Wort oder den Ausdruck. Die Listen der verwandten Wörter, verwandten Ausdrücke und Antonyme werden nicht als Einträge in der Liste der Bedeutungen mitgezählt.

Set mySynInfo = Selection.Range.SynonymInfo 
If mySynInfo.MeaningCount <> 0 Then 
 myList = mySynInfo.MeaningList 
 For i = 1 To Ubound(myList) 
 Debug.Print myList(i) 
 Next i 
Else 
 Msgbox "There were no meanings found." 
End If

MeaningList

Gibt die Liste der Bedeutungen für das Wort oder den Ausdruck zurück.

Die Listen der verwandten Wörter, verwandten Ausdrücke und Antonyme werden nicht als Einträge in der Liste der Bedeutungen mitgezählt.

Set mySyn = Documents("MyDoc.doc").Words(3).SynonymInfo 
If mySyn.MeaningCount <> 0 Then 
 myList = mySyn.MeaningList 
 For i = 1 To UBound(myList) 
 Msgbox myList(i) 
 Next i 
Else 
 Msgbox "There were no meanings found." 
End If

Parent

Gibt einen Wert vom Typ Object zurück, der das übergeordnete Objekt des angegebenen SynonymInfo-Objekts darstellt.

Dim objParent As Object
Set objParent = SynonymInfo.Parent

PartOfSpeechList

Gibt eine Liste mit den Sprachelementen zurück, die mit den gefundenen Bedeutungen für das Wort oder den Ausdruck übereinstimmen, das/der im Thesaurus nachgeschlagen wurde.

Möglichen Werte sind wdAdjective - Adjektiv, wdAdverb - Adverb, wdConjunction - Konjunktion, wdIdiom - Redensart, wdInterjection - Interjektion, wdNoun - Substantiv, wdOther - Anderes Sprachelement, wdPreposition - Präposition, wdPronoun - Pronomen, wdVerb - Verb.

Die Liste der Sprachelemente wird als Array zurückgegeben, das aus den folgenden WdPartOfSpeech -Konstanten besteht: wdAdjective, wdAdverb, wdConjunction, wdIdiom, wdInterjection, wdNoun , wdOther, wdPreposition, wdPronounund wdVerb.

Set mySynInfo = Selection.Range.SynonymInfo 
If mySynInfo.MeaningCount <> 0 Then 
 myList = mySynInfo.MeaningList 
 myPos = mySynInfo.PartOfSpeechList 
 For i = 1 To UBound(myPos) 
 Select Case myPos(i) 
 Case wdAdjective 
 pos = "adjective" 
 Case wdNoun 
 pos = "noun" 
 Case wdAdverb 
 pos = "adverb" 
 Case wdVerb 
 pos = "verb" 
 Case Else 
 pos = "other" 
 End Select 
 MsgBox myList(i) & " found as " & pos 
 Next i 
Else 
 MsgBox "There were no meanings found." 
End If

RelatedExpressionList

Gibt eine Liste von Ausdrücken zurück, die mit dem angegebenen Wort oder dem angegebenen Ausdruck verwandt sind.

Normalerweise werden sehr wenige verwandte Ausdrücke im Thesaurus gefunden.

Set synInfo = Selection.Range.SynonymInfo 
If synInfo.Found = True Then 
 relList = synInfo.RelatedExpressionList 
 If UBound(relList) <> 0 Then 
 For intCount = 1 To UBound(relList) 
 Msgbox relList(intCount) 
 Next intCount 
 Else 
 Msgbox "There were no related expressions found." 
 End If 
End If

RelatedWordList

Gibt eine Liste von Wörtern zurück, die mit dem angegebenen Wort oder dem angegebenen Ausdruck verwandt sind.

Set synInfo = ActiveDocument.Words(3).SynonymInfo 
If synInfo.Found = True Then 
 relList = synInfo.RelatedWordList 
 If UBound(relList) <> 0 Then 
 For intCount = 1 To UBound(relList) 
 Msgbox relList(intCount) 
 Next intCount 
 Else 
 Msgbox "There were no related words found." 
 End If 
End If

SynonymList

Gibt eine Liste von Synonymen für die angegebene Bedeutung eines Worts oder Ausdrucks zurück.

Syntax : expression.SynonymList (Meaning)

Word

Gibt das im Thesaurus nachgeschlagene Wort oder den Ausdruck zurück.

Der Thesaurus sucht manchmal eine verkürzte Version der Zeichenfolge oder des Bereichs, der zum Zurückgeben des SynonymInfo -Objekts verwendet wird.

Sub Syn() 
 Dim mySynObj As Object 
 Dim SList As Variant 
 Dim i As Variant 
 
 Set mySynObj = ActiveDocument.Words(3).SynonymInfo 
 SList = mySynObj.SynonymList(1) 
 For i = 1 To UBound(SList) 
 MsgBox "A synonym for " & mySynObj.Word _ 
 & " is " & SList(i) 
 Next i 
End Sub