【发布时间】:2020-01-19 03:04:38
【问题描述】:
我在下面的代码回复所有电子邮件节目
“运行时错误 13 类型不匹配”
当它运行到下一个时(对于每个下一个循环)。
我为今天收到的电子邮件设置了规则。当谈到下一个(下一个日期)时,它会显示错误消息。
我调试了,它停止了错误消息,直到收到的时间是今天。
sub fwdmail ()
dim i as long
dim otlk as outlook.application
dim nmspc as outlook.namespace
dim olmail as Outlook.MailItem
dim objfolder as Outlook.MAIPfolder
dim oreply as Outlook.MailItem
set otlk=New Outlook.Applicaiton
Set Nmsp=otlk.GetNamespace("MAPI")
Set objfolder=nmspc.getdefaultFolder("olFolderInbox).Folder("notice")
for each olmail in objfolder.Items
if olmail.ReceivedTime>=Format(Date, "YYYY/MM/DD") then
' do the stuff here
end if
next
我厌倦了检查是否为 mailitem 类型,但得到了相同的错误消息。
for each olmail in objfolder.Items
if typeof olmail is outlook.item then
if olmail.ReceivedTime>=Format(Date, "YYYY/MM/DD") then
' do the stuff here
end if
end if
next
【问题讨论】:
-
很可能您在该文件夹中有一个不是邮件项目的项目,请参阅here。
-
我修正了问题上的错字。我也尝试检查它是否是 IF typeof 中的邮件项,但我仍然收到错误消息>
-
你需要检查
TypeOf项目之前试图循环。 -
请注意,您可以使用
Items.Restrict而不是循环。 -
另外 -
MailItem.ReceivedTime是Date,不要将其与Variant/String比较,这是Format返回的内容。