【问题标题】:Auto download attachment from Outlook 2010 to local or network folder using Inbox Rules使用收件箱规则将附件从 Outlook 2010 自动下载到本地或网络文件夹
【发布时间】:2012-11-03 08:59:16
【问题描述】:

我有这段代码,它可以在一台计算机上运行 Outlook 2010 64 位,但不能在另一台运行 32 位的计算机上运行。我不认为这与 32bit/64 有任何关系,只是想以防万一。

我已经尝试了所有方法,禁用宏,将 Outlook 翻过来,但无法让此代码正常工作。

也许第二只眼睛会发现我缺少的东西:

Sub saveAttachtoDisk(itm As Outlook.MailItem)
Dim objAtt As Outlook.Attachment
Dim saveFolder As String
Dim dateFormat
dateFormat = Strings.Format(Now(), "mm_dd_yyyy_HH_MM_SS_AMPM")
saveFolder = "C:\Users\Jarvis\Desktop\Test"
For Each objAtt In itm.Attachments
objAtt.SaveAsFile saveFolder & "\" & "My_Data_" & dateFormat & ".csv"
Set objAtt = Nothing
Next
End Sub

谢谢大家!

【问题讨论】:

  • 您在 32 位计算机上遇到什么错误? 32 位计算机是否已经创建了saveFolder 路径?
  • 是的,我创建了文件夹,我没有收到任何错误或消息,这就是它如此困难的原因。但是,计算机在网络上,64 是本地/个人的。
  • 您可以尝试在 Sub:MsgBox Err.Number & ": " & Err.Description & "; " & Err.Source 末尾添加这一行来查看是否抛出错误。
  • 我什么也没得到,怎么知道脚本是否正在运行?有没有错误?
  • 我通常使用MsgBox "test"Debug.Print "test" 行检查是否有东西在运行。我不确定这是否有帮助,但它似乎有same subject as your question

标签: vba outlook outlook-2010


【解决方案1】:

Based on our chat,看来解决办法是:

  1. 将 VB 宏项目中的所有内容复制到文本文件中。将文本文件保存到您的驱动器。
  2. 关闭一切,重新启动计算机。
  3. 转到您的 C:\Documents and settings\Application Data\Microsoft\Outlook 文件夹。
  4. 要么删除文件 VBAProject.otm,要么(更好更安全)重命名为 VBAProject.old 或类似的名称。
  5. 打开 Outlook
  6. 重新打开 VB 宏编辑器
  7. 粘贴文本文件中的代码。

[Instructions courtesy of Arcane Code]

【讨论】:

  • 凯文你是最伟大的 - 非常感谢你的时间和奉献精神!
猜你喜欢
  • 2013-09-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-08-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多