【问题标题】:Random paste in my Outlook object with a CopyPicture使用 CopyPicture 随机粘贴到我的 Outlook 对象中
【发布时间】:2017-11-22 10:26:02
【问题描述】:

我每天都在运行一个向很多人发送电子邮件的脚本,但是我在这个脚本上有一个随机问题,有两种不同的方式。

首先:图片已正确粘贴到我的 Outlook 对象中,所以一切正常。

第二:图片粘贴在 Excel 中而不是 Outlook 中,脚本被锁定在此处,应用程序没有错误。

这真的很令人不安,因为当我重新启动时,一切正常,但如果其他人想要进行操作并且出现错误,那就不好了。

我使用 CopyPicture 和 SendKeys "^v" 将其粘贴到 Outlook 中。

这是我的代码:

Dim OutApp As Object, OutMail As Object
Application.Wait Now + TimeValue("00:00:01")
If colonne = 10 Then
Range("A1:AA103").CopyPicture xlScreen, xlBitmap
Else
Range("A1:AA97").CopyPicture xlScreen, xlBitmap
End If
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
With OutMail
            .To = ""
            .CC = ""
            .BCC = ""
            .Subject = ""
            .HTMLBody = ""

  .display

End With
SendKeys "^v"

有一个 HTMLBody 和一个主题,但那只是文本,所以我只把重要的代码放在这里。

我已经查看了之前给出的所有解决方案,但没有人回应我的随机问题。

谢谢

【问题讨论】:

  • 我认为原因是当您触发Sendkeys 操作时,消息窗口不可见。尝试在该行之前添加 2-3 秒的等待时间。
  • 你好 Jawor,是的,我在问这个问题之前试过这个,我把它放在 .display 之后,也放在 End With 之后。那改变什么我也有同样的问题。有时,outlook 已经打开,但粘贴不起作用
  • 永远不要依赖SendKeys 做任何事情。这是不可靠的。
  • 嗨@braX,是的,也许这个解决方案有点老了^^你有什么推荐给我的?我正在使用 Outlook 2010

标签: excel vba outlook


【解决方案1】:

显示后尝试使用 DoEvents

.Display
DoEvents

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-06-21
    • 1970-01-01
    • 2020-05-07
    • 1970-01-01
    • 1970-01-01
    • 2011-08-26
    • 2013-09-10
    相关资源
    最近更新 更多