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 :

Optimisation de l'envoi mails via Excel


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Homme Profil pro
    chargé clientèle
    Inscrit en
    Novembre 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : chargé clientèle

    Informations forums :
    Inscription : Novembre 2019
    Messages : 7
    Par défaut Optimisation de l'envoi mails via Excel
    Bonjour,

    J'ai besoin de votre expertise concernant ma problématique.

    Pour faire simple, je cherche à envoyer un mail à deux personnes (accompagnant et accompagné), les adresses mail de ces personnes sont dans 2 colonnes différentes.

    En suivant les tutos ici et sur internet, voici mon code :

    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
     
     
    Sub envoimail()
     
    Dim lemail As Variant
    Dim ligne As Integer
     
    Set lemail = CreateObject("Outlook.Application")
    For ligne = 2 To 4
     
    With lemail.createitem(olMailItem)
     
    .To = Range("C" & ligne) & ";" & Range("I" & ligne)
    .display
     
    End With
     
    Next ligne
     
    End Sub
    Pas de soucis , cela s'exécute et fonctionne.

    J'aimerai optimiser ce code en n'ayant plus à saisir
    For ligne = 2 To X
    Si le code pouvez identifier de lui même le nombre de ligne avec une adresse sur les colonnes C et I , cela serait parfait !

    Pouvez-vous m'apporter votre aide ?

    J'ai essayé pas mal de chose sur internet mais je n'arrive jamais à une solution optimale.

    Par avance, merci !
    Pas en PJ mon fichier
    Fichiers attachés Fichiers attachés

  2. #2
    Expert confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Juin 2012
    Messages
    3 414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juin 2012
    Messages : 3 414
    Par défaut
    Bonjour,

    En supposant que l'on parcourt le tableau à partir de la ligne 2 et que l'on s'arrête dès qu'une cellule est vide en colonne C:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub envoimail()
        Dim lemail As Variant
        Dim ligne As Integer
        Set lemail = CreateObject("Outlook.Application")
        ligne = 2
        While Range("C" & ligne) <> ""          '--- tant qu'il y a une adresse mail
            With lemail.createitem(olMailItem)
                .To = Range("C" & ligne) & ";" & Range("I" & ligne)
                .display
            End With
            ligne = ligne + 1
        Wend
    End Sub
    Cordialement.

  3. #3
    Membre régulier
    Homme Profil pro
    chargé clientèle
    Inscrit en
    Novembre 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : chargé clientèle

    Informations forums :
    Inscription : Novembre 2019
    Messages : 7
    Par défaut
    Merci beaucoup EricDng

  4. #4
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 169
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    En utilisant les tableaux structurés, vous vous affranchissez
    • du nombre de lignes
    • de l'endroit où se trouve votre tableau dans le classeur
    • de la position de la colonne à condition d'en connaître son nom


    Exemple
    On parcourt ici toutes les lignes de la colonne nommée Mail du tableau ayant pour nom t_Montableau
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub t()
      Dim r As Long
      With Range("t_Montableau")
        For r = 1 To .Rows.Count
         Debug.Print .Cells(r, .ListObject.ListColumns("Mail").Index).Value
        Next
      End With
    End Sub
    Un peu de lecture
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

Discussions similaires

  1. Envoi Mail via Excel
    Par isa0144 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 04/07/2014, 23h37
  2. [XL-2010] Envoi mail via excel
    Par jul2012 dans le forum Macros et VBA Excel
    Réponses: 18
    Dernier message: 18/12/2012, 13h53
  3. [XL-2003] Envoi mail via excel: texte ne s'affiche pas
    Par chrisssou dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 11/09/2012, 15h50
  4. [XL-2010] Envoi mail via Outlook depuis excel en VBA
    Par PATDRO dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 07/08/2012, 08h40
  5. Envoi d'un mail via excel
    Par tidams dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 18/01/2009, 00h05

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