Classe SynonymInfo - informações sobre sinônimos (Word VBA)

A classe SynonymInfo representa as informações sobre sinônimos, antônimos, palavras relacionadas ou expressões relacionadas para o intervalo especificado ou para uma sequência de caracteres específica. Para usar uma variável de classe SynonymInfo, ela primeiro precisa ser instanciada por exemplo


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

AntonymList

Retorna uma lista de antônimos para a palavra ou frase. A lista é retornada como uma matriz de cadeias de caracteres. somente leitura.

A propriedade AntonymList é uma propriedade do objeto SynonymInfo, que pode ser retornado de um intervalo ou do aplicativo. Quando esse objeto é retornado do aplicativo, você especifica a palavra a ser procurada e o idioma a ser usado. Quando o objeto é retornado de um intervalo, o intervalo é procurado usando o idioma do intervalo.


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 se o dicionário de sinônimos encontrar sinônimos, antônimos, palavras relacionadas ou expressões relacionadas para a palavra ou frase. Boolean somente leitura.


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

Retorna o número de entradas na lista de significados encontrados no dicionário de sinônimos da palavra ou frase. Retorna 0 zero se nenhum significado é encontrado. Long somente leitura.

Cada significado representa uma lista exclusiva de sinônimos da palavra ou frase. As listas de palavras relacionadas, expressões relacionadas e antônimos não são contadas como entradas da lista de significados.


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

Retorna a lista de significados da palavra ou frase. A lista é retornada como uma matriz de cadeias de caracteres. somente leitura.

As listas de palavras relacionadas, expressões relacionadas e antônimos não são contadas como entradas da lista de significados.


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

PartOfSpeechList

Retorna uma lista das categorias gramaticais correspondentes aos significados encontrados para a palavra ou frase procurada no dicionário de sinônimos. A lista é retornada como uma matriz de números inteiros. somente leitura. Aqui você pode encontrar os valores possíveis para WdPartOfSpeech.

A lista de partes da fala é retornada como uma matriz que consiste nas seguintes constantes WdPartOfSpeech : wdAdjective, wdAdverb, wdConjunction, wdIdiom, wdInterjection, wdNoun, ** wdOther**, wdPreposition, wdPronoune wdVerb. Os elementos da matriz são ordenados para correspondem aos elementos retornados pela propriedade MeaningList.


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

Retorna uma lista de expressões relacionadas a palavra ou frase especificada. A lista é retornada como uma matriz de cadeias de caracteres. somente leitura.

Normalmente, poucas expressões relacionadas são encontradas no dicionário de sinônimos.


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

Retorna uma lista de palavras relacionadas a palavra ou frase especificada. A lista é retornada como uma matriz de cadeias de caracteres. somente leitura.


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

Retorna uma lista de sinônimos de um significado especificado de uma palavra ou frase. A lista é retornada como uma matriz de cadeias de caracteres. somente leitura.

SynonymList (Meaning)

Word

Retorna a palavra ou frase que foi procurada no dicionário de sinônimos. Cadeia de caracteressomente leitura.

Às vezes, o dicionário de sinônimos procurará uma versão abreviada da cadeia de caracteres ou do intervalo usado para retornar o objeto SynonymInfo . A propriedade Word permite que você veja a sequência de caracteres exata que foi usada.


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