Я получил этот код из чьего-то блога несколько лет назад.Он в основном перебирает все почтовые правила Outlook и выполняет их (удобно, чтобы организовать свой почтовый ящик!).Я недавно обновился до Outlook 2010 с 2007 года. Теперь я получаю очень странную ошибку о том, что
Run-time error '92':
For loop not initialized
Однако при отладке он всегда будет выполняться 8 раз (из 20-25), затемон выдает эту ошибку.
Вот код ошибки:
Sub RunAllInboxRules()
Dim st As Outlook.Store
Dim myRules As Outlook.Rules
Dim rl As Outlook.Rule
Dim count As Integer
Dim ruleList As String
'get default store (where rules live) & get rules
Set st = Application.Session.DefaultStore
Set myRules = st.GetRules
'iterate all the rules
For Each rl In myRules
If rl.RuleType = olRuleReceive Then 'determine if it’s an Inbox rule, if so, run it
rl.Execute ShowProgress:=True
count = count + 1
ruleList = ruleList & vbCrLf & rl.Name
End If
Next
'tell the user what you did
ruleList = "These rules were executed against the Inbox: " & vbCrLf & ruleList
MsgBox ruleList, vbInformation, "Macro: RunAllInboxRules"
Set rl = Nothing
Set st = Nothing
Set myRules = Nothing
End Sub
Редактировать:
За комментарий Джея Риггсаочистка всего блока по-прежнему приводит к ошибке.