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

Excel Discussion :

mails différents destinataires


Sujet :

Excel

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Gestionnaire Technico-Administratif
    Inscrit en
    Novembre 2019
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Gestionnaire Technico-Administratif
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2019
    Messages : 34
    Points : 9
    Points
    9
    Par défaut mails différents destinataires
    Bonjour,

    j'ai besoin d'aide, j'ai un classeur qui me sert à envoyer un formulaire de motif d'absence. Suivant le motif, j'aimerais l'envoyer à des destinataires différents. J'ai deja une macro qui fonctionne, mais c'est pour tous le monde. Merci.

    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
    ActiveSheet.Range("A1:n40").Select
    ActiveWorkbook.EnvelopeVisible = True
     
    With ActiveSheet.MailEnvelope
        .Introduction = "Bonjour ," & vbCrLf & " " & vbCrLf & "Merci de bien vouloir prendre en considération la demande ci dessous." & vbCrLf & " " & vbCrLf & "Cordialement"
        .Item.To = "xxxxxx@xxx.xxx"
        .Item.Subject = Range("a8") & " / " & Range("c15") & " / " & Range("c13")
        .Item.send
        Range("c13,c15,e22,f24,f26,i24,i26,c30").Value = ""
     
    Unload Me
    UserForm_Quitter.Show
     
     
    End With
    End Sub

  2. #2
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    A priori, il suffit de modifier la ligne .Item.To =.

    Elle est assignée par une simple chaine de caractère.
    Il suffirait donc sans doute de faire une structure Select Case avec un Case par motif qui permette de renseigner la chaine de caractère avec le mail du destinataire souhaité.
    Lire ça : https://docs.microsoft.com/fr-fr/off...case-statement

    Mais pour en dire plus, il faudrait que tu expliques où se trouve les données listant les motifs et les adresses correspondantes et aussi comment tu comptes transmettre ce motif à la macro (question posée à l'utilisateur ? valeur dans une cellule ? autre ?).
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  3. #3
    Expert éminent
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Points : 7 149
    Points
    7 149
    Billets dans le blog
    7
    Par défaut
    Salut,

    Si dans une feuille annexe, tu disposes
    d'une plage de cellule nommée liste_1 et reportant la liste des destinataires propre au motif A
    d'une plage de cellule nommée liste_2 et reportant la liste des destinataires propre au motif B

    Nom : Img_Forum_destinataires.JPG
Affichages : 76
Taille : 19,9 Ko

    alors la fonction suivante te retournera pour un motif donné une chaîne de caractères représentant la liste des destinataires.

    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
    Option Explicit
     
    Public Function listedest(lemotif As String) As String
     
    Dim rng_liste As Range
     
    Dim tablo() As Variant
     
    With Worksheets(1)
            Select Case lemotif
                    Case "A"
                            Set rng_liste = .Range("liste_1")
                    Case "B"
                            Set rng_liste = .Range("liste_2")
            End Select
    End With
     
    ReDim tablo(1 To rng_liste.Count)
    tablo = Application.Transpose(rng_liste)
     
    listedest = Join(tablo, ";")
     
    Set rng_liste = Nothing
     
    End Function
    Ainsi

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ?listedest("A")
    valpo@licella.fr;chiant@superiore.fr
    ?listedest("B")
    fiano@campania.fr;verduzzo@friul.fr;...neziagiulia.fr
    C'est cette chaîne de caractères qui alimentera le paramètre destinataire (To)

    Bien Cordialement.

    Marcel

    Dernier billet:
    Suppression des doublons d'un tableau structuré, gestion d'un array

    Pas de messagerie personnelle pour vos questions, s'il vous plaît. La réponse peut servir aux autres membres. Merci.


  4. #4
    Futur Membre du Club
    Homme Profil pro
    Gestionnaire Technico-Administratif
    Inscrit en
    Novembre 2019
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Gestionnaire Technico-Administratif
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2019
    Messages : 34
    Points : 9
    Points
    9
    Par défaut
    Merci à tous les 2.

    Pour répondre à Menhir, tout commence lorsque j'ouvre un classeur, un userform s'ouvre avec 2 combobox. Dans une, le choix du nom de la personne concernée, dans l'autre le motif, (cela se trouve dans une liste sur une feuille). Lorsque je valide, ça ce retranscrit dans 2 cellules distincte d'une feuille (celle qui est envoyée), c'est à partir de là que je voudrais que le choix soit

    Pour MarcelG, étant un peu novice avec les macros, le ne comprend pas ce je dois mettre à la place de A et B ainsi que liste_1 et liste_2, sachant que j'ai 9 motifs et que je peux avoir plusieurs destinataires par motif.

    J’espère avoir été clair avec mes explications, et vous remercie encore vivement.

    je vous joint mon projet.

    absences.xlsm

Discussions similaires

  1. [Mail] Envoyer mail à plusieurs destinataires
    Par nixax dans le forum Langage
    Réponses: 2
    Dernier message: 01/11/2006, 10h55
  2. Réponses: 2
    Dernier message: 26/10/2006, 21h38
  3. mailing automatique destinataire en copie
    Par calimero91 dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 28/06/2006, 10h18
  4. [Mail] Plusieurs destinataires fonction mail
    Par Jiraiya42 dans le forum Langage
    Réponses: 8
    Dernier message: 27/04/2006, 23h00
  5. [CrystalReport9]nom de l'état et mail du destinataire
    Par cdu dans le forum SAP Crystal Reports
    Réponses: 5
    Dernier message: 18/02/2005, 17h08

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