Clase SynonymInfo - información acerca de sinónimos (Word VBA)
La clase SynonymInfo representa la información acerca de sinónimos, antónimos, palabras o expresiones relacionadas del intervalo especificado o de una cadena dada. Para usar una variable de clase SynonymInfo, primero debe ser instanciado, por ejemplo
Dim sio as SynonymInfo
Set sio = Dim strWord As String: strWord =
SynonymInfo(Word:=strWord)
AntonymList
Devuelve una lista de antónimos de la palabra o frase.
La propiedad AntonymList es una propiedad del objeto SynonymInfo, que puede devolverse desde un intervalo o una aplicación.
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 si el diccionario de sinónimos encuentra sinónimos, antónimos, palabras relacionadas o expresiones relacionadas para la palabra o frase.
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
Devuelve el número de entradas en la lista de significados que se encontraron en el diccionario de sinónimos de la palabra o frase.
Cada significado representa una lista única de sinónimos de la palabra o frase. Las listas de palabras relacionadas, expresiones relacionadas y antónimos no se cuentan como elementos de la 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
Devuelve la lista de significados de la palabra o frase.
Las listas de palabras relacionadas, expresiones relacionadas y antónimos no se cuentan como elementos de la 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
Devuelve una lista de las partes del texto correspondiente a los significados que se encontraron de la palabra o frase en el diccionario de sinónimos. Aquí puede ver valores posibles para
La lista de las partes de la voz se devuelve como una matriz que consta de las siguientes constantes WdPartOfSpeech : wdAdjective, wdAdverb, wdConjunction, wdIdiom, wdInterjection, wdNoun, ** wdOther**, wdPreposition, wdPronouny 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
Devuelve una lista de expresiones relacionadas con la palabra o frase especificada.
Normalmente se encuentran muy pocas expresiones relacionadas en el diccionario 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
Devuelve una lista de palabras relacionadas con la palabra o frase especificada.
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
Devuelve una lista de sinónimos para un significado especificado de una palabra o frase.
SynonymList (Meaning)
Word
Devuelve la palabra o frase que se buscó mediante el diccionario de sinónimos.
A veces, el Diccionario de sinónimos buscará una versión abreviada de la cadena o del intervalo que se usa para devolver el objeto SynonymInfo .
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