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

VBA Access Discussion :

[VBA]Boucle et Pièces Jointes sur mailing list


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 65

    Informations forums :
    Inscription : Février 2006
    Messages : 230
    Par défaut [VBA]Boucle et Pièces Jointes sur mailing list
    Bonjour,
    Comme toujours j'avance dans cette mine de renseignements et de tuyaux qu'est ce forum. Véritablement, cela donne envie de progresser même si parfois le découragement fait place quand on se compare à d'autres. enfin trois mois seulement cela laisse l'espoir !!!

    J'ai un formulaire basé sur une requête me permettant de sélectionner les correspondants à qui je veux envoyer un email... J'y joins une pièce jointe personnalisée que je tire d'un lien hypertexte renseigné dans ma table initiale... Tout fonctionne bien sauf qu'il me met pour tous les correspondants sélectionnés la pièce jointe correspondante au premier de la liste !!! c'est un problème de boucle sans doute... mais je ne vois pas la solution... si simple probablement.

    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
    Private Sub Mail_Click()
    Dim olApp As Outlook.Application
      Dim EMail As Outlook.MailItem
      Set olApp = Outlook.Application
      'Déclaration d'une variable ADO :
      Dim bds As New ADODB.Recordset
      bds.Open "R_Sélect_Email", CurrentProject.Connection
     
      ' On se positionne sur le premier enregistrement :
      bds.MoveFirst
      ' Tant que le dernier enregistrement n'est pas atteint :
      While Not bds.EOF
      ' On affiche le contenu du champs NomPrenom et EMail :
        Set EMail = olApp.CreateItem(olMailItem)
       Set myAttachments = EMail.Attachments
     
        With EMail
        .To = bds("E_mail")
        .Subject = "Ma société"
        .Attachments.Add (Forms!Employés1.Fiche_Id.Hyperlink.Address)
        .Body = "Ceci est un test. Nous vous demandons de ne pas répondre à ce message."
        .Display
        '.Send
        End With
        ' On va sur le suivant :
        bds.MoveNext
      Wend
      ' On ferme et on libère la variable :
      bds.Close
      Set bds = Nothing
    End Sub

    F (il fait très beau aux Marquises) !!!

  2. #2
    Membre émérite Avatar de jean-paul lepetit
    Inscrit en
    Février 2005
    Messages
    849
    Détails du profil
    Informations personnelles :
    Âge : 69

    Informations forums :
    Inscription : Février 2005
    Messages : 849
    Par défaut
    Salut,

    tu attaches effectivement le même fichier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
         .Attachments.Add (Forms!Employés1.Fiche_Id.Hyperlink.Address)
    il faudrait que tu prennes l'adresse dans la table sur laquelle tu boucles et non pas sur le formulaire

    PS: Il fait très beau en Auvergne aussi....

  3. #3
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 137
    Par défaut
    Bonjour,

    A Toulouse c'est une tempête de ciel bleu... Pour la baignade on va attendre Juillet ou Aout.

    Il s'agit des adresses Employé1. Tu peux ouvrir le recordset du formulaire.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    forms.employé1.recordset
    ou encore
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Forms.enployé1.recordsetclone
    Pour la boucle je te laisse faire.

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  4. #4
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 65

    Informations forums :
    Inscription : Février 2006
    Messages : 230
    Par défaut Pièce jointe dans boucle email
    Bonjour,
    Je reviens vers vous après quelques jours en mer. Les sirènes ne m'ont guère inspiré... Définitivement, j'ai un problème de conception dans ma boucle et je n'arrive pas à attacher ma pièce jointe 1 avec mon escorte 1, PJ2 avec escorte 2... Je tourne en rond (pas dans le Pacifique heureusement). Je suis revenu au point de départ. Quelqu'un peut il me mettre sur la voie pour savoir quoi et où insérer le code dans mon code déjà existant ?
    Merci

  5. #5
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 65

    Informations forums :
    Inscription : Février 2006
    Messages : 230
    Par défaut Piece jointe et mailing
    Re bonjour,
    Je ne doute pas que Loufab avait la solution... que j'ai vainement cherchee. En plus la difference entre recordset et recordset clone est totalement floue pour moi meme avec l'aide. Quequ,un aurait-il un element pour aiguiller un pauvre marin solitaire du Pacifique Sud !

  6. #6
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 086
    Par défaut
    Regarde ici, peut-être pour l'inspiration.

    Je hais les gens qui profitent du soleil quand je dois faire du vélo sous la neige.
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  7. #7
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 137
    Par défaut
    Le recordset d'un formulaire correspond à l'ensemble des enregistrements (et des champs ) spécifié par la source de celui-ci.

    Le recordsetclone est une "copie" de ce même recordset. Celui-ci est utiliser particulièrement lorsque l'on veut utiliser une valeur du recordset sans changer d'enregistrement courant.

    Beaucoup d'application en perspective. Copie de valeur, recherche sans interférer dans la position...

    Dans le cas qui te concerne tu dois utiliser le recordset ou recordsetclone (suivant si tu veux ou ne veux pas changer le pointeur de position) pour récupérer les employés.

    La déclaration est simple

    dim rst as dao.recordset
    set rst = forms.Employés1.recordset

    Cela se traite comme un recordset classique (voir le tuto sur DAO)

    Cordialement,
    A l'occase fait nous parvenir une belle photo de ton ile
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 28/07/2011, 16h41
  2. Envoi pièce jointe sur mail
    Par binou-ze dans le forum Langage
    Réponses: 2
    Dernier message: 07/10/2010, 10h39
  3. [AC-2003] boucle sur pièces jointes envoi mail
    Par novice06 dans le forum VBA Access
    Réponses: 1
    Dernier message: 16/07/2010, 14h50
  4. [Mail] Envoi de pièces jointes sur email
    Par Atrahazis dans le forum Langage
    Réponses: 3
    Dernier message: 18/10/2007, 14h35
  5. Insertion pièce jointe sur mail
    Par Michel DELAVAL dans le forum Access
    Réponses: 1
    Dernier message: 27/06/2006, 11h18

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