【问题标题】:Copy last sent email from outlook 2016 to memory将上次发送的电子邮件从 Outlook 2016 复制到内存
【发布时间】:2020-01-10 01:45:00
【问题描述】:

我在 Outlook 2010 上使用了下面的代码,没有任何故障,但在 2016 Outlook 上它什么也不做,也没有错误。

sub copylastsenttomem ()
 Dim objSentFolder As Outlook.MAPIFolder
 Dim objSentItem As Outlook.MailItem
Dim outForward As Outlook.MailItem
    Dim objNS As Namespace
Dim objFolder As MAPIFolder


Set objNS = GetNamespace("MAPI")
Set objFolder = objNS.GetDefaultFolder(olFolderSentMail)

  Set outForward = objFolder.Items(1).Forward
 'Set outForward = objFolder.Items(1)
'outForward.Display

 Dim M As MailItem, Buf As MSForms.DataObject
Set M = outForward


Set Buf = New MSForms.DataObject
Buf.SetText M.body
Buf.PutInClipboard


end sub

【问题讨论】:

  • 也许这个post 对你有帮助。
  • Sent Items 文件夹中是否有任何项目?

标签: excel vba outlook outlook-2010 outlook-2016


【解决方案1】:

在代码中,您假设 Sent Items 文件夹中包含任何项目:

  Set objFolder = objNS.GetDefaultFolder(olFolderSentMail)
  Set outForward = objFolder.Items(1).Forward

确保文件夹至少包含一个要转发的项目。

【讨论】:

  • 您是否尝试调试代码?你有任何错误吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-05-25
  • 2018-07-24
  • 2020-09-19
  • 2021-12-24
  • 2018-04-27
  • 1970-01-01
相关资源
最近更新 更多