Como o Outlook usa o Word (se instalado) como seu editor, é um pouco difícil conseguir isso. :)
Você precisa fazer referência ao aplicativo Word, depois ao documento do Word e, em seguida, à seleção.
Para que o código a seguir funcione no Outlook, você precisa adicionar uma referência ( VBA Editor - > Ferramentas - > Referências ) à "Biblioteca de Objetos do Microsoft Word" e a outra ao " Microsoft Forms Object Library ", para que possamos realmente copiar o texto da área de transferência do sistema.
Observação: Para mim, no Office 2013, o objeto MS Forms não estava na lista, então acabei de adicionar um UserForm ao projeto VBA, que adicionou a referência automaticamente e, em seguida, excluiu o formulário. A referência parou.
De qualquer forma, eu pesquisei várias fontes e aqui está um código que colei o texto realçado na área de transferência, com uma verificação de erros básica (testada no Outlook 2013):
Public Sub CopyTextToClipBoard()
Dim objItem As Object
Dim objInsp As Outlook.Inspector
Dim objWord As Word.Application
Dim objDoc As Word.Document
Dim objSel As Word.Selection
On Error Resume Next
' Reference the current Outlook item
Set objItem = Application.ActiveInspector.CurrentItem
If Not objItem Is Nothing Then
If objItem.Class = olMail Then
Set objInsp = objItem.GetInspector
If objInsp.EditorType = olEditorWord Then
Set objDoc = objInsp.WordEditor
Set objWord = objDoc.Application
Set objSel = objWord.Selection
On Error GoTo NotText
With New MSForms.DataObject
.SetText objSel.Text
.PutInClipboard
End With
On Error Resume Next
End If
End If
End If
Set objItem = Nothing
Set objWord = Nothing
Set objSel = Nothing
Set objInsp = Nothing
NotText:
If Err <> 0 Then
MsgBox "Data on clipboard is not text."
End If
End Sub