【发布时间】:2023-03-26 04:29:01
【问题描述】:
我有一个包含两个别名 pod@ 和 invoices@ 的电子邮件帐户。将 pod@ 收到的邮件移动到 POD 文件夹(Outlook 文件夹,而不是 HDD)有一个规则。
我已经运行了一个脚本 VBA 代码,例如: Save attachments to a folder and rename them
我需要为 invoices@ 设置相同的规则,以便将附件保存到另一个网络驱动器。
如果添加另一个相同但位置不同的脚本,我在设置 Outlook 规则时无法选择任何脚本,它们变得不可见。
我想让脚本在不同的规则中运行,将附件保存到不同的网络文件夹。
或
一个带有脚本的规则将确定发送到哪个别名邮件,将邮件移动到特定的 Outlook 文件夹,然后将附件保存到不同的网络文件夹。
我还发现运行当前脚本存在问题。尝试将附件保存到网络文件夹时,网络文件夹不可访问,规则崩溃。
我不会 VBA 或任何其他语言。
已编辑:
根据以下答案:
Public Sub saveAttachtoDisk_invoices (itm As Outlook.MailItem)
Dim objAtt As Outlook.Attachment
Dim saveFolder As String Dim dateFormat
dateFormat = Format(Now, "yyyy-mm-dd H-mm") saveFolder = "C:\Temp\"
on error goto ErrorHandler
For Each objAtt In itm.Attachments
objAtt.SaveAsFile saveFolder & "\" & dateFormat & objAtt.DisplayName
Next
on error goto 0
exit sub
ErrorHandler:
debug.print itm.subject
debug.print err.number & ": " & err.description & " on save line in saveAttachtoDisk_invoices"
resume next
End Sub
我添加了一条消息,以便最终用户知道是否发生错误并且文件未保存。我已将此行添加到 ErrorHandler
MsgBox objAtt.DisplayName & ": " & Err.Description
这将显示文件名和路径不存在的描述。
【问题讨论】:
-
你能发布你的代码吗?没有看到代码,很难说出你需要做什么。听起来您可以只添加一个
IF语句来检查条件,然后为输出文件夹设置一个字符串变量。有关简要概述,请参阅 techonthenet.com/excel/formulas/…>。另外,msdn.microsoft.com/en-us/library/…> -
不知道为什么我的 html 标记不起作用。 techonthenet.com/excel/formulas/if_then.php 和 msdn.microsoft.com/en-us/library/752y8abs.aspx