0

我对 VBA 不太了解,需要以下帮助:

我想创建一个 txt 文件并将其保存在特定位置(覆盖现有同名文件)。

文本文件必须包含电子邮件主题中的最后一个单词,即帐号。出于解释的目的,我将调用帐号Variable1

如果电子邮件主题 = Account Recon - 10201314050019434586

然后变量1 = 10201314050019434586

必须创建/替换的文本文件:C:\Users\tenba1\Documents\QlikView\Account Recons\Recon_Acct.txt

文件中的文本必须是: SET vAcct = 'Variable1';

所以在这个例子中,文件中的文本必须是: SET vAcct = '10201314050019434586';

宏必须查看主题中的最后一个单词(即最后一个空格之后的所有内容) - 帐号并不总是 20 位数字。

提前致谢

4

1 回答 1

5

这应该可以解决问题。这是一个宏脚本,它获取顶部打开的电子邮件的主题并将帐号写入 Recon_Acct.txt。如果没有数字,则文本将为 SET vAcct = ''。每次执行脚本时,文件都会被覆盖。

Sub writeSubjectToFile()
    Const FILEPATH = "C:\Users\tenba1\Documents\QlikView\Account Recons\Recon_Acct.txt"
    Dim objEmailItem As Object, strSubject
    Dim strSubject As String
    Dim strText As String

    Set objEmailItem = Application.ActiveInspector.CurrentItem

    strSubject = objEmailItem.subject
    strText = Trim(Right(strSubject, Len(strSubject) - InStr(1, strSubject, "-")))

    Open FILEPATH For Output As 1
    Print #1, "SET vAcct = '" & strText & "';"
    Close #1
End Sub
于 2013-09-16T12:12:44.747 回答