The following should work.
Code:
Sub MarkParenthesizedItalicsNoProofing()
With ActiveDocument.Range
With .Find
.ClearFormatting
.Text = "\([A-Z][a-z.][!\(]@\)"
.Replacement.Text = ""
.Forward = True
.Format = False
.MatchWildcards = True
.Wrap = wdFindStop
.Execute
End With
Do While .Find.Found
.Start = .Start + 1
.End = .End - 1
If .Font.Italic = True Then .NoProofing = True
.Collapse wdCollapseEnd
.Find.Execute
Loop
End With
End Sub
Note that there is a flaw in your own Find expression:
[!\)]
should be:
[!\(]
Otherwise it
will fail if there are unmatched parentheses and the entire unmatched string is not italic.