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

IHM Discussion :

Publipostage mails / programme à modifier


Sujet :

IHM

  1. #1
    Membre à l'essai
    Homme Profil pro
    Opérateur CN
    Inscrit en
    Août 2018
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Opérateur CN

    Informations forums :
    Inscription : Août 2018
    Messages : 27
    Points : 11
    Points
    11
    Par défaut Publipostage mails / programme à modifier
    Bonjour,

    Je me permets de vous demander un peu d'aide concernant le publipostage de mails depuis Access.

    J'ai trouvé le code ci-dessous et j'aimerais savoir s'il est possible de le modifier pour pouvoir ajouter, pour chaque destinataire, 3 pièces jointes (2 PJ qui seront identiques pour tout le monde + 1 PJ propre à chaque destinataire).

    Je vous remercie d'avance pour votre aide.

    Bien cordialement,

    Ingrid


    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
    Private Sub cmdSend_Click()
     
        'Déclaration des variables
        Dim rstCourriels As DAO.Recordset
        Dim appOutlook As Outlook.Application
        Dim MailOutlook As Outlook.MailItem
     
        'Baser le recordset sur la requête "Liste publimailing"
        Set rstCourriels = CurrentDb.OpenRecordset("Liste publimailing")
     
        'Aller au premier enregistrement du recordset
        rstCourriels.MoveFirst
     
        'boucler jusqu'à la fin du recordset
        Do While Not rstCourriels.EOF
     
            'Si le champ "Courriel" est vide passer à l'enregistrement suivant
            If IsNull(rstCourriels!Courriel) Then GoTo saut_enregistrement
     
                'Lancer Outlook si l'application n'est pas déjà ouverte
                Set appOutlook = GetObject(, "Outlook.Application")
                If Err <> 0 Then
                    Set appOutlook = CreateObject("Outlook.Application")
                End If
     
                'Créer un nouvel Email
                Set MailOutlook = appOutlook.CreateItem(olMailItem)
     
                With MailOutlook
     
                    'Affecter l'adresse électronique
                    .To = rstCourriels!Courriel
     
                    'Affecter l'objet du message
                    .Subject = txtObjet
     
                    'Affecter le corp du message
                    .Body = txtMessage
     
                    'Définir les options d'envoi
                    .ReadReceiptRequested = False:  'Ne pas demander d'accuser de lecture
                    .OriginatorDeliveryReportRequested = True:  'Demander un accusé de réception
                    .Importance = olImportanceHigh:  'Définir l'importance à haute
     
                    'Envoyer le message
                    .Send
     
                End With
     
    saut_enregistrement:
     
            'Passer à l'enregistrement suivant
            rstCourriels.MoveNext
        Loop
     
        'Fermer le recordset
        rstCourriels.Close
     
        'Message d'information
        MsgBox "Les messages ont été créés, vérifier au niveau d'Outlook", vbApplicationModal + vbInformation + vbOKOnly, "Envois de messages"
     
        'Décharger les objets en mémoire
        Set MailOutlook = Nothing
        Set appOutlook = Nothing
        Set rstCourriels = Nothing
     
    End Sub

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Bonjour.

    Utilise la procedure de la FAQ :

    Comment envoyer un mail avec Outlook ?
    https://access.developpez.com/faq/?page=Outlook#outlook

    Elle et permet de passer une liste de pieces jointes sous forme de tableau.

    Quelque chose comme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    dim listePieceJointe(1 to 3) as string
    listePieceJointe(1)="x:\unChemin\UnFichier1.txt" 'A parametrer selon tes besoins
    listePieceJointe(2)="x:\unChemin\UnFichier2.txt"
    listePieceJointe(3)="x:\unChemin\UnFichier3.txt"
     
    call CreateEmail( _
        "toto.titi@tata.com", _
        "Mon courriel + 3 PJs", _
        "Ceci est un courriel avec 3 pieces jointes", _
        listePieceJointe())
    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Opérateur CN
    Inscrit en
    Août 2018
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Opérateur CN

    Informations forums :
    Inscription : Août 2018
    Messages : 27
    Points : 11
    Points
    11
    Par défaut
    Bonsoir marot_r,

    Merci pour votre réponse mais, étant novice, je ne comprends pas trop.

    Je dois insérer votre "morceau" de code dans celui décrit dans la FAQ ?

    Puis je dois créer une macro dans Access, contenant l'ensemble du code, c'est bien ça ?

    Merci d'avance pour votre aide.

    Ingrid

  4. #4
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Bonjour.

    Dans un module, il faut copier le code de la FAQ.
    Attention ne pas oublier la référence sur Outlook en allant l'éditeur de code, menu "Outils" puis "Références" et cocher Microsoft Outlook.

    Puis après il faut adapter à tes besoins le code que j'ai posté.

    D'où appelles-tu l'envoi des courriels ? D'un formulaire ?
    Où sont les noms des fichiers à ajouter ? Dans une table ? Dans un formulaire ?

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Opérateur CN
    Inscrit en
    Août 2018
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Opérateur CN

    Informations forums :
    Inscription : Août 2018
    Messages : 27
    Points : 11
    Points
    11
    Par défaut
    Bonsoir,

    En fait, j'ai une table toute simple dans Access contenant les champs "nom_destinataire", "mail_destinataire", "PJ_destinataire" (pour la pièce jointe, en pdf, propre à chaque destinataire : PJ 1, PJ 2, PJ 3, ...).
    Je souhaiterais envoyer un même mail à plusieurs destinataires :
    - envoi 1 : au destinataire 1, avec PJ 1 + PJ A + PJ B
    - envoi 2 : au destinataire 2, avec PJ 2 + PJ A + PJ B
    - envoi 3 : au destinataire 3, avec PJ 3 + PJ A + PJ B
    - etc.
    Les pièces jointes A et B, en pdf, sont sur le bureau de mon ordi.
    Je vais essayer de copier le code de la FAQ dans un module (sur Access ?) et je vais essayer d'y intégrer votre morceau de code, en espérant que ça fonctionne.
    Merci pour votre aide.
    Bonne soirée.
    Ingrid

  6. #6
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Bonjour.

    Et comment fais-tu l'envoi ? En appuyant sur un bouton dans un fromulaire ? En lot (tous les destinataires d'un coup) ?

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  7. #7
    Membre à l'essai
    Homme Profil pro
    Opérateur CN
    Inscrit en
    Août 2018
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Opérateur CN

    Informations forums :
    Inscription : Août 2018
    Messages : 27
    Points : 11
    Points
    11
    Par défaut
    Bonsoir,

    Je n'ai pas encore trouvé la solution ... Un envoi par "lot" serait l'idéal ...

  8. #8
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    OK, est-ce pour tous les destinataires contenus dans ta table ou seulement une partie d'entre eux ?

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  9. #9
    Membre à l'essai
    Homme Profil pro
    Opérateur CN
    Inscrit en
    Août 2018
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Opérateur CN

    Informations forums :
    Inscription : Août 2018
    Messages : 27
    Points : 11
    Points
    11
    Par défaut
    L'envoi "automatique" concernerait tous les destinataires contenus dans la table.
    Bonne soirée.
    Ingrid

Discussions similaires

  1. Réponses: 3
    Dernier message: 14/12/2010, 16h13
  2. Réponses: 2
    Dernier message: 09/12/2010, 21h03
  3. [Mail] Envoyer un e-mail programmé
    Par rollergirl dans le forum Langage
    Réponses: 1
    Dernier message: 04/09/2009, 12h46
  4. Réponses: 1
    Dernier message: 15/04/2009, 14h54
  5. [Mail] Envoi d'un e-mail sans modifier php.ini
    Par le_contact dans le forum Langage
    Réponses: 1
    Dernier message: 08/02/2007, 13h04

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