什么是Outlook 2007宏来自动选择Paste Special - Unformatted Text看起来像什么?


6

我想将Outlook 2007中的宏分配给工具栏按钮,当Windows剪贴板中存在格式化文本时,该按钮将执行相当于这些单击的操作:

  1. 单击底部箭头的粘贴图标
  2. 单击“选择性粘贴”链接。
  3. 单击“无格式文本”链接。

我在Excel 2007和Word 2007中有类似的宏,但无法在Outlook 2007 / VBA中使用它。这样一个宏的VBA代码是什么?

Answers:


5

在作者Sue Mosher的大量帮助下,我终于设法让一个宏工作在Outlook 2007上自动鼠标点击粘贴 - 粘贴特殊 - 无格式文本!WOO-HOO !!!!

我剪切并粘贴到Outlook电子邮件中的大部分内容都已格式化。使用CTRL-V粘贴或单击“粘贴”按钮可保持格式不变。单击粘贴 - 选择性粘贴 - 无格式文本并不是什么大问题,但每次执行它都需要几秒钟 - 我做的很多。所以这件小事对我来说将是一个节省时间。

VBA子程序:

Sub Paste_Special_Unformatted()
    Dim objDoc As Word.Document
    Dim objSel As Word.Selection
    On Error Resume Next
    ' get a Word.Selection from the open Outlook item
    Set objDoc = Application.ActiveInspector.WordEditor
    Set objSel = objDoc.Windows(1).Selection
    ' now do what you want with the Selection
    objSel.PasteSpecial Link:=False, DataType:=wdPasteText
    Set objDoc = Nothing
    Set objSel = Nothing
End Sub

为了使它工作,我还需要在Outlook 2007中打开VBA编辑器,单击工具 - 引用,并启用Microsoft Word 12.0对象库的引用。然后我将宏链接到QAT工具栏中的自定义按钮,用于创建新消息和回复,它工作得很好!

我之前可能已经提到了这个,但是WOO-HOO !!!!

谢谢你,苏!


1

它应该与Word 2007中的相同:

    Sub FormatText()
'
' FormatText Macro
'
'
    Selection.PasteAndFormat (wdFormatPlainText)
    Selection.PasteSpecial Link:=False, DataType:=20, Placement:=wdInLine, _
        DisplayAsIcon:=False
End Sub
  1. 在Outlook中,指向“工具”菜单上的“宏”,然后单击“Visual Basic编辑器”。
  2. 在“项目”窗口中,双击要包含宏的模块。
  3. 在“插入”菜单上,单击“过程”。
  4. 在“名称”框中,键入宏的名称,然后单击“确定”。键入要在子例程的主体中运行的代码(或从Word复制/粘贴它)

我尝试时遇到运行时错误'424'对象所需的错误。
Gary Petersen
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.