我对VBA并不是很了解,需要一些帮助:
我想创建一个txt文件并将其保存在特定位置(用同一名称覆盖现有文件)。
文本文件必须计算电子邮件主题中的最后一个单词,该单词将是一个帐号。出于解释的目的,我将调用帐号 Variable1 。
如果电子邮件主题= 帐户调查 - 10201314050019434586
然后 Variable1 = 10201314050019434586
必须创建/替换的文本文件: C:\ Users \ tenba1 \ Documents \ QlikView \ Account Recons \ Recon_Acct.txt
文件中的文字必须是: SET vAcct ='Variable1';
因此,在此示例中,文件中的文本必须为: SET vAcct ='10201314050019434586';
宏必须查看主题中的最后一个单词(即最后一个空格后面的所有内容) - 帐号并不总是20位数。
提前致谢
答案 0 :(得分:5)
这应该可以解决问题。这是一个宏脚本,它接受顶部打开的电子邮件的主题并将Accountnumber写入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