gpt4 book ai didi

excel - 查找主题以特定文本开头的电子邮件

转载 作者:行者123 更新时间:2023-12-03 01:00:50 26 4
gpt4 key购买 nike

我正在尝试按以特定文本开头的主题查找电子邮件,然后从该电子邮件下载附件。

我正在使用具有 Restrict 函数的变量,但问题似乎是由于使用了通配符。

Sub findemail()

cntofmkts = Range("A" & Rows.Count).End(xlUp).Row
cntofmkts = cntofmkts - 1
ftodaydate = Format(Date, "yyyy-mm-dd")

Do
If i > cntofmkts Then Exit Do

MarketName = Range("A" & j).Value
Findvariable = "XXX_" & MarketName & "_ABC_" & ftodaydate

For Each oOlItm In oOlInb.Items.Restrict("[Subject] = *Findvariable*")
eSender = oOlItm.SenderEmailAddress
dtRecvd = oOlItm.ReceivedTime
dtSent = oOlItm.CreationTime
sSubj = oOlItm.Subject
sMsg = oOlItm.Body

If oOlItm.Attachments.Count <> 0 Then
For Each oOlAtch In oOlItm.Attachments
'~~> Download the attachment
oOlAtch.SaveAsFile NewFileName & oOlAtch.Filename
Exit For
Next
Else
MsgBox "The First item doesn't have an attachment"
End If

Exit For
Next

i = i + 1
j = j + 1

Loop
End sub

最佳答案

您应该注意的第一件事是 Restrict() 方法不会按变量名称来计算变量。您必须将变量连接到字符串。

另一个是,如果您查看 MSDN site 中的示例, ,您将看到不支持通配符,因此您必须使用 SQL 语法,并且过滤表达式中搜索的文本必须位于引号之间。

' this namespace is for Subject
filterStr = "@SQL=""http://schemas.microsoft.com/mapi/proptag/0x0037001f"" like '%" & Findvariable & "%'"

似乎 urn:schemas:httpmail:subject 也可以工作并且更容易理解,但我现在无法确认这一点:

filterStr = "@SQL=""urn:schemas:httpmail:subject"" like '%" & Findvariable & "%'"

关于excel - 查找主题以特定文本开头的电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30464271/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com