La macro di Outlook funziona solo per un account


0

Ho usato la macro di Outlook per spostare tutte le bozze direttamente nella posta in uscita:

 Sub SendAllDrafts()
' Send the messages in the Drafts folder (ignore any subfolders)
If MsgBox("Are you sure you want to send ALL the items in your default Drafts folder?", _
    vbQuestion + vbYesNo) <> vbYes Then Exit Sub
Dim fldDraft As MAPIFolder, msg As Outlook.MailItem, intCount As Integer
Set fldDraft = Outlook.GetNamespace("MAPI").GetDefaultFolder(olFolderDrafts)
intCount = 0
Do While fldDraft.Items.Count > 0
    Set msg = fldDraft.Items(1)
    msg.Send
    intCount = intCount + 1
Loop
If Not (msg Is Nothing) Then Set msg = Nothing
Set fldDraft = Nothing
MsgBox intCount & " messages sent", vbInformation + vbOKOnly
End Sub

La macro funziona su un account ma quando passo a un altro account ricevo un errore: "Errore di runtime '-2147467259 (80004005)': Outlook non riconosce uno o più nomi". Quando premo debug punta una freccia gialla sulla riga "msg.invia".PrintScreen


1
sembra essere un problema con alcuni messaggi in quella cartella, non con la macro. Hai provato a inviarli manualmente?
Máté Juhász,

1
Grazie, avevi ragione. Ho creato alcuni nuovi messaggi e ha funzionato.
Ci

1
Potresti voler implementare un po 'di gestione degli errori nella tua macro :)
Máté Juhász

1
Come posso darti un po 'di reputazione?
Roy_Batty,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.