A family of Microsoft word processing software products for creating web, email, and print documents.
You could find potential adjectives with code like:
Sub Demo()
Dim wdSynInfo As SynonymInfo, wdSynList As Variant
Dim StrTxt As String, StrOut As String, StrTmp As String
Dim i As Long, j As Long
StrTxt = " ": StrOut = "Potential Adjectives:"
With ActiveDocument.Range
For i = 1 To .Words.Count
StrTmp = Trim(.Words(i))
If InStr(1, StrTxt, " " & StrTmp & " ", vbTextCompare) = 0 Then
StrTxt = StrTxt & StrTmp & " "
End If
Next
StrTxt = Trim(StrTxt)
For i = 0 To UBound(Split(StrTxt, " "))
StrTmp = Split(StrTxt, " ")(i)
Set wdSynInfo = SynonymInfo(Word:=StrTmp, LanguageID:=wdEnglishUS)
If wdSynInfo.MeaningCount <> 0 Then
wdSynList = wdSynInfo.PartOfSpeechList
For j = 1 To UBound(wdSynList)
If wdSynList(j) = wdAdjective Then
StrOut = StrOut & Chr(11) & StrTmp
Exit For
End If
Next
End If
Next
.InsertAfter vbCr & StrOut
End With
End Sub
The above macro outputs a list of potential adjectives at the end of the document.
Once you start analysing the output, you'll find the code demonstrates a fundamental problem; many words exist in more than one part of speech. The part of speech a word belongs to depends on its context and there is no definitive solution apart from one that employs contextual analysis - which you can't do with a macro.