【发布时间】:2014-06-16 13:14:26
【问题描述】:
我有一个脚本,我发现它当前可以保存附件,但我还需要它来将这些附件重命名为相同的名称。
我正在创建一个系统来更新我的一个网站上的库存。为此,我从我们的 ERP 中获得一份报告(CSV),其中包含我所有的项目编号和库存计数。
他们通过电子邮件发送给我,但附加的 CSV 始终具有以不同数字结尾的名称。
我需要文件每次都具有相同的名称,因为我的脚本将该 CSV 保存到一个文件夹中,并且我有一个 FTP 程序,该程序可以自动将该 CSV FTP 到我的 Web 服务器。
从这里我有一个关于 cron 作业的 PHP 脚本,它通过 CSV 运行并更新我的产品的数量。
相信我,如果我的 ERP 有一个 API,这会容易得多,但运气不好。
无论如何,我的问题在于附件的命名。下面的脚本保存了它,但我还需要它来删除名称中的数字或将其命名为“CPNINVTRUM”。
Public Sub saveAttachtoDisk(itm As Outlook.MailItem)
Dim objAtt As Outlook.Attachment
Dim saveFolder As String
saveFolder = "C:\PATH"
For Each objAtt In itm.Attachments
objAtt.SaveAsFile saveFolder & "\" & objAtt.DisplayName
Set objAtt = Nothing
Next
End Sub
附件始终采用以下形式:CPNINVTRUM###.csv。 ### 表示 ERP 生成的 3 位随机数。
【问题讨论】:
-
请举例说明当前的附件名称。
-
都是这样的CPNINVTRUM###.CSV。末尾的 ### 始终是 3 位数字。
-
如何将多个附件保存到同名文件中?该文件将被覆盖。如果你不关心, SaveAsFile 行应该是 objAtt.SaveAsFile "C:\PATH\CPNINVTRUM"
-
我不在乎。我使用的 FTP 程序在上传文件后会移动文件,最重要的是,我在 Outlook 中有一条规则,仅当主题包含特定内容时才运行此脚本。我想我已经涵盖了所有内容。