Bonjour, j'ai fais une macro qui permet d'effacer tous les mails d'une date fournie dans une USF. si j'ai que 3-4 mails ca fonctionne mais si j'en ai plusieurs dizaines, outlook se plante...
C'est comme si je voulais effacer un mail alors le le mail précèdent n'a pas eu le temps de s'effacer... (je suis dans une boucle)
Y a t-il une expression VBA qui dit a outlook de faire le reste si il est dispo?
D'apres ce que j'ai compris, outlook efface le mail (phase de synchronisation), comment l'interroger pour savoir si outlook est en synchro? des la synchro finie je continu le prog mais comment faire??
sinon j'ai pensé à "Application.Time TimeSerial(0, 0, 2)" pour attendre 2secondes entre chaque supression mais c'est une expression Excel et donc ca ne fonctionne pas dans le code VBA de outlook.
exemple de code:
merci pour votre aide car je suis coincé...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 For Each i In MonDossiercorbeille.Items ReceivedTime = Left(i.ReceivedTime, 10) ' isole la date ReceivedTimecorrige = Replace(ReceivedTime, "/", "") 'enleve les "/" de la date If ReceivedTimecorrige = RecupDate Then ' compare la date du mail et la date du jour où est lancé la macro i.Delete ' supprimer le mail Application.Time TimeSerial(0, 0, 2) <<<<<<----------- plantage compteurCorbeille = compteurCorbeille - 1 End If Next i
Partager