Lecture de mail dans un folder OutLook un sur deux
Bonjour à tous.
Il y a un phénomène que j'ai du mal à m'expliquer dans mon code. Mais posons les bases de suite :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
|
Private Sub Lancer_Click()
'lancement de l'objet Outlook pour trouver les mails à gérer
Dim outlookApp As New Outlook.Application
Dim olNs As Outlook.NameSpace
Dim Fldr, FldrError, FldrTraite As Outlook.MAPIFolder
Dim olMail As MailItem
'Préparation des répertoires dans OutLook
Set olNs = outlookApp.GetNamespace("MAPI")
Set Fldr = olNs.Folders.GetFirst
Set FldrError = Fldr.Folders("EVENTError")
Set FldrTraite = Fldr.Folders("EVENTTraite")
Set Fldr = Fldr.Folders("EVENT")
Set myitems = Fldr.Items
Dim SaisieTag As Integer
MsgBox myitems.Count
For Each olMail In myitems
'ICI je fais des traitments pour trouver des données dans le corps des mails.
'ma variable SaisieTag me permet de gérer des "erreurs" selon mes traitements avec parfois un "GoTo suivant"
suivant:
If SaisieTag = 1 Then
olMail.Move FldrError
Else
olMail.Move FldrTraite
End If
Next
MsgBox "Fin de traitement"
End Sub |
Ce que je ne comprends pas c'est pourquoi il ne me lit pas tous les mails dans le folder de base ?
Il ne m'en lit que la moitié. Sur ma base de test j'ai 147 mails et il ne m'en traite que 73, il m'en reste donc 74 dans le folder. Mais si je relance, il ne m'en traite que 37 et ainsi de suite sur des lancements successifs, toujours la moité
Est ce que par hazard j'oublierais un truc, du genre le recaler sur le bon folder après le move ?
MErci pour votre aide.