IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

test vérification envoi mail


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juin 2009
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 23
    Par défaut test vérification envoi mail
    Bonjour le forum,

    J'ai écrit une macro sous excel qui permet d'envoyer un ensemble de fichiers excel enregistrés dans un repertoire à un ensemble de destinanataireS dans les e-mails sont inscrits dans un tableaux: chaque fichier est envoyé à un destinataire en utilisant outlook.

    Le programme parcourt la liste des destinataires grace à une boucle for.

    J'ai remarqué que la boucle for est plus rapide que l'envoi meme des fichiers, du coup, le compteur passe à un autre fichier sans que le précédent ne soit envoyé,; du coup j'ai plein de fichiers qui passent en brouillon.

    Pour corriger ça, j'ai rajouté un compteur, ça marche sur mon prdi mais dès que j'essaye sur un autre ordi , j'ai plein de fenetre outlook qui s'ouvre, qui restent ouvertes et le programme plante : en fait ça dépend de la vitesse du processeur !

    Donc la meilleure solution serait de pouvoir tester si l'envoi d'un mail via outlook a bien été fait de façon à ne pas passer au prochain envoi que après l'envoi du précédent, mais je sais pas du tout comment écrire un code qui fait ça !

    voici mon code (la partie envoi seulement) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
     
     
    Set OutApp = CreateObject("Outlook.Application")
     OutApp.Session.Logon
     
      Set OutMail = OutApp.CreateItem(0)
      AttachMail = "D:\Documents and Settings\wboudgui\Desktop\test-14 aout\fiches-crees\" & nom & ".xls"
       strbody = "Information sur la mise à jour"
      On Error Resume Next
          With OutMail
     
          'mettre display après with et non pas avant sendkeys car sinon le premier fichier n'est pas envoyé
          '.Display
        ' SendKeys "^{ENTER}"
     
     
     
    '.Attachments.Add "C:\Users\foufitta\Desktop\test-14 aout\fiches-crees\" & nom & ".xls"
     
     
     
     
              .To = Workbooks("UPIFich.xls").Worksheets("Feuil1").Cells(n, 6).Value
              '.To = "wafa.boudguiga@yahoo.fr"
              '.CC = "Francois.pignon@free.fr;robin.des.bois@sherwood.gb"
              .Subject = "fiche d'imput"
              .BodyFormat = olFormatHTML
            .HTMLBody = "Bonjour, <BR><BR> voici votre fiche ! "
     
        '' Timer permettant d'attendre que l'envoi soit fait
           If AttachMail <> "" Then
            .Attachments.Add AttachMail
       End If
     
     
     
     
     
    .Display
      SendKeys "^{ENTER}"
     
     
    End With
     
      Do Until Timer >= 15
     
       DoEvents
     
    Loop
     
     
     Next
     
     
        'mettre with avant goto car sinon le premier fichier n'est pas envoyé
           On Error GoTo 0
     
           Set OutMail = Nothing
          Set OutApp = Nothing
     
     
     
    'Je ne ferme pas outlook pour le laisser finir l'envoi
    'Set myOlApp = CreateObject("Outlook.Application")
       ' myOlApp.Quit
     
    SendKeys "{ENTER}"
    SendKeys "^{ENTER}"
    merci beaucoup, à plus

  2. #2
    Membre Expert Avatar de Fvandermeulen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 869
    Par défaut
    Salut,
    Une piste ... compter les éléments dans Outbox, si 0 => OK sinon attendre.
    J'ai récupéré des infos sur le Tuto Outlook (en fait je planche sur l'équivalent de ton cas depuis un bout de temps...) Là elle sont brutes, il faudrait tester en modifiant le dossier...mais j'ai pas encore eu le temps.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    'Déclaration des Objets et variables
        Dim MonApply As Outlook.Application
        Dim MonMail As Outlook.MailItem
        Dim MonNSpace As Outlook.namespace
        Dim FldDossier As Outlook.Folder
        Dim strInfos As String
     
        'Instance des Objets
        Set MonApply = Outlook.Application    'Application Outlook
        Set MonNSpace = MonApply.GetNamespace("MAPI")    'Banque MAPI
        Set FldDossier = MonNSpace.GetDefaultFolder(olFolderInbox)    'Dossier boîte de réception
        'Initialisation de la chaîne de caractères
     
    If FldDossier.Items.Count >0 then
    ...

Discussions similaires

  1. vérification envoi de mail
    Par glasgow dans le forum Langage
    Réponses: 6
    Dernier message: 12/06/2009, 09h03
  2. [javamail] envoi mail avec message en pièce jointe
    Par k4eve dans le forum API standards et tierces
    Réponses: 5
    Dernier message: 16/11/2007, 11h17
  3. envoi mail avec piece jointe fichier excel
    Par flogreg dans le forum ASP
    Réponses: 12
    Dernier message: 20/12/2004, 16h02
  4. [Envoi mails]Récupérer les enregistrements MX d'un domaine
    Par streetpc dans le forum Développement
    Réponses: 7
    Dernier message: 09/06/2004, 20h00
  5. pb envoi mail CDONTS
    Par flatron dans le forum ASP
    Réponses: 2
    Dernier message: 30/12/2003, 16h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo