Macro récupérant adresse mail dans cellule Excel

Résolu
anizzz Messages postés 22 Statut Membre -  
Le Pingou Messages postés 12276 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour ! :)

J'ai la macro suivante permettant d'envoyer une feuille excel à une personne. La macro fonctionne et envoie ma feuille au destinataire dont j'indique l'adresse mail. Je voudrais que ma macro aille récupérer l'adresse mail dans une cellule et l'applique à la macro.



Sub SendMail()

' Copy the sheet(1.5)
ThisWorkbook.Sheets(1.5).Copy

' Send Email
With ActiveWorkbook
.SendMail Recipients:=Array("....@....com"), Subject:="DMS" & Format(Date, "dd/mmm/yy")
.Close SaveChanges:=False
End With

End Sub



Ceci afin d'éviter à l'utilisateur de modifier la macro à la main. Les différentes adresses seront listées et il choisira celle qu'il veut utiliser.

Est-ce possible ?

Si quelqu'un pouvait m'aider ce serait super ! Merci d'avance ! :)

12 réponses

  1. Le Pingou Messages postés 12276 Date d'inscription   Statut Contributeur Dernière intervention   1 478
     
    Bonjour,
    Juste au passage sans avoir testé.
    Les adresses courriels se trouvent dans la plage A2 :A10 par exemple.
    Partie du code :
    .........
    For Each adrc In Range("A2:A10") ' endroit ou se trouve vos adresse courriel
    With ActiveWorkbook
    .SendMail Recipients:=adrc, Subject:="DMS" & Format(Date, "dd/mmm/yy")
    .Close SaveChanges:=False
    End With
    Next adrc
    ..........
    0
  2. Le Pingou Messages postés 12276 Date d'inscription   Statut Contributeur Dernière intervention   1 478
     
    Bonjour,
    J'ai mal interprété l'explication.
    Il faut créer une liste déroulante (par exemple en D1) et vous lui donnez comme référence la plage A2 :A10 et ainsi l'adresse est choisie en [D1] et dans votre code la ligne :
    .SendMail Recipients:=Range("D1").Value ....

    0
  3. anizzz Messages postés 22 Statut Membre
     
    Bonjour,

    Merci ce code fonctionne mais j'aimerais que le mail soit envoyé à l'adresse que j'aurais sélectionnée dans ma liste et pas à toute la liste. Je ne vois pas comment faire pour indiquer que j'ai sélectionné une adresse et que je veux que ce soit celle-ci qui soit utilisée. Le numéro de cellule change selon l'adresse que je choisis ( logique ) donc je ne peux pas noter un seul numéro de cellule...

    Voici mon code :


    Sub SendMail2()
    ' Copy the sheet(1)
    ThisWorkbook.Sheets(1.5).Copy

    ' Send Email
    For Each adrc In Range("B28:B30") ' endroit ou se trouve vos adresse courriel
    With ActiveWorkbook
    .SendMail Recipients:=adrc, Subject:="DMS" & Format(Date, "dd/mmm/yy")
    .Close SaveChanges:=False
    End With
    Next adrc

    End Sub


    Merci d'avance et bonne journée :)
    0
  4. Le Pingou Messages postés 12276 Date d'inscription   Statut Contributeur Dernière intervention   1 478
     
    Bonjour,
    Avez-vous bien lu mon deuxième message.... ?

    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Le Pingou Messages postés 12276 Date d'inscription   Statut Contributeur Dernière intervention   1 478
     
    Bonjour,
    Je ne sais pas comment et organisée votre application, donc difficile de ...
    Pouvez-vous mettre le fichier comme exemple sur https://www.cjoint.com/ et poster le lien ?

    0
  7. anizzz Messages postés 22 Statut Membre
     
    Bonjour,

    Merci pour vos réponses. Mes besoins ont changés, je voudrais que ma macro s'adapte quand je change le numéro de feuille à envoyer. Je vous ai mis mon fichier excel sur ce lien :

    https://www.cjoint.com/?0JclvgU8bL6
    J'espère qu'il fonctionne !

    Bonne journée ! :)
    0
  8. anizzz Messages postés 22 Statut Membre
     
    http://cjoint.com/data/0JclAB6hKej.htm
    0
  9. Le Pingou Messages postés 12276 Date d'inscription   Statut Contributeur Dernière intervention   1 478
     
    Bonjour,
    Merci pour le fichier.
    Problème fibre optique, une réponse demain matin..... !

    0
  10. Le Pingou Messages postés 12276 Date d'inscription   Statut Contributeur Dernière intervention   1 478
     
    Bonjour,
    Mais ou sont les adresses courriels...... ?
    En plus : People 1 correspond toujours à carte 7 et ainsi de suite Oui / Non ?

    0
  11. anizzz Messages postés 22 Statut Membre
     
    Bonjour, Merci pour tes réponses! :)

    Pour répondre à ta question, les numéros de cartes assignés aux auditeurs changent. La macro que tu m'as envoyée fonctionne mais envoie la carte 2 quand je demande la 4, certainement parce que la carte 2 se trouve dans la 4ème feuille. Comment modifier cela ?

    Aussi comment faire pour dupliquer cette macro sur les autres lignes de mon tableau? Je voudrais savoir si c'est possible de faire encore plus rapide : Avoir une seule macro qui envoie à tous mes auditeurs les cartes qui leurs sont destinées ?

    Merci beaucoup et bonne journée !
    0
    1. Le Pingou Messages postés 12276 Date d'inscription   Statut Contributeur Dernière intervention   1 478
       
      Bonjour,
      La macro que tu m'as envoyée fonctionne mais envoie la carte 2 quand je demande la 4, certainement parce que la carte 2 se trouve dans la 4ème feuille.

      Ce que vous dite est faux car : avec toutes les explications manquantes j'ai pris pour acquis que le numéro de la carte correspondait au numéro de la feuille soit pour le Peopel 3 carte 4 correspond la feuille 4 du classeur ave Peopel 2 carte 2 la feuille 2 et ainsi de suite.

      Aussi comment faire pour dupliquer cette macro sur les autres lignes de mon tableau?

      Note : le choix se fait sur la feuille [EnvoiChoix] via la liste déroulante qui a comme référence le tableau de la feuille [tableau]. Donc une macro pour le tout.

      Je voudrais savoir si c'est possible de faire encore plus rapide : Avoir une seule macro qui envoie à tous mes auditeurs les cartes qui leurs sont destinées ?
      Là vous tournez en rond car je vous l'avais proposé la première fois avec comme résultat ...... mais j'aimerais que le mail soit envoyé à l'adresse que j'aurais sélectionnée dans ma liste et pas à toute la liste.

      Salutations.
      Le Pingou
      0
  12. anizzz Messages postés 22 Statut Membre
     
    Mon problème est résolu ! :)
    0