ОК - я нашел то, что работает.Ужасно, но работает:
Sub EmphesizeSelectedText(color As Long)
Dim msg As Outlook.MailItem
Dim insp As Outlook.Inspector
Set insp = Application.ActiveInspector
If insp.CurrentItem.Class = olMail Then
Set msg = insp.CurrentItem
If insp.EditorType = olEditorWord Then
Set document = msg.GetInspector.WordEditor
Set rng = document.Application.Selection
With rng.font
.Bold = True
.color = color
End With
End If
End If
Set insp = Nothing
Set rng = Nothing
Set hed = Nothing
Set msg = Nothing
End Sub
В конце концов я нашел ссылку, что WordEditor возвращает объект Document
.Оттуда было 2 часа просмотра очень медленной веб-справки MSDN, чтобы узнать, что для получения выделенного текста мне нужно было подняться на один уровень вверх до Application
.Важное примечание - изменение rng.Style.Font
не сделало то, что я хотел, оно изменило весь документ, когда я начал использовать with rng.font
, моя проблема была решена (благодаря возможностям записи в marco в Excel для отображения мне правильного синтаксиса)