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