【发布时间】:2011-09-10 03:52:36
【问题描述】:
一个小错误导致此计数代码无法运行。
Sub Count2
Dim objOutlook As Object, objnSpace As Object, objFolder As Object
Dim Count As Integer
Set objOutlook = CreateObject("Outlook.Application")
Set objnSpace = objOutlook.GetNamespace("MAPI")
Set objFolder = objnSpace.Folders("My Personal Emails").Folders("spam")
If Err.Number <> 0 Then
Err.Clear
MsgBox "No such folder."
Exit Sub
End If
For Each MapiItem In MapiFolderInbox.Messages
Select Case Weekday(MapiItem.TimeReceived)
Case vbMonday
Count = Count + 1
End Select
Next MapiItem
MsgBox "Number of spam messages sent on a Monday: " & Count
End Sub
错误信息:
运行时错误“424”: 需要对象
调试器突出显示该行:
For Each MapiItem In MapiFolderInbox.Messages
【问题讨论】:
-
我不是 VBA 专家,但我认为您需要在使用
MapiItem和MapiFolderInbox之前声明它们。 -
好的 - 我将以上两个都声明为对象。错误消息已更改为:运行时错误'91':对象变量或未设置块变量
标签: vba outlook outlook-2003