相关疑难解决方法(0)

对于每个循环:在循环浏览Outlook邮箱以删除项目时会跳过某些项目

我想开发以下VBA代码:

  1. 循环遍历邮箱中的所有电子邮件项目
  2. 如果有任何类型的其他项目说"日历邀请"跳过该项目.
  3. 查找带附件的电子邮件
  4. 如果附加文件中包含".xml"扩展名和特定标题,则将其保存到目录中,如果没有继续搜索
  5. 在执行步骤4后,将所有电子邮件中的.xml附件包含在"已删除邮件"文件夹中,并通过循环删除该文件夹中的所有电子邮件.

代码工作完美除外; 例如

  1. 收到8封电子邮件,其中每个邮箱都附有".xml"文件.
  2. 运行代码
  3. 你会看到8个项目中只有4个被成功处理,其他4个仍然在他们的位置.
  4. 如果再次运行代码,现在将成功处理2个项目,而其他2个项目仍保留在您的邮箱中.

问题:在运行代码之后,它应该处理所有文件并删除它们,而不是每次运行中的一半.我想让它在一次运行中处理所有项目.

顺便说一下,每次打开Outlook时都会运行此代码.

Private Sub Application_Startup()
'Initializing Application_Startup forces the macros to be accessible from other offic apps

'Process XML emails

Dim InboxMsg As Object

Dim DeletedItems As Outlook.Folder
Dim MsgAttachment As Outlook.Attachment
Dim ns As Outlook.NameSpace
Dim Inbox As Outlook.Folder

Dim fPathTemp As String
Dim fPathXML_SEM As String
Dim fPathEmail_SEM As String
Dim i As Long
Dim xmlDoc As New MSXML2.DOMDocument60
Dim xmlTitle As MSXML2.IXMLDOMNode
Dim xmlSupNum As …
Run Code Online (Sandbox Code Playgroud)

outlook vba for-loop outlook-vba

12
推荐指数
2
解决办法
2万
查看次数

标签 统计

for-loop ×1

outlook ×1

outlook-vba ×1

vba ×1