VBA Excel - Envoi mail avec fichier attaché avec Outlook

แชร์
ฝัง
  • เผยแพร่เมื่อ 18 ธ.ค. 2024

ความคิดเห็น • 116

  • @clairepoinfoux5377
    @clairepoinfoux5377 4 ปีที่แล้ว +1

    Bonjour Joël,
    Merci pour ce tuto. Super bien expliqué!
    J'ai modifié la macro pour avoir une personne en cc et que la pièce jointe soit personnalisée à chaque destinataire. J'ai donc ajouté :
    un Dim ListeCopie()
    et un Dim ListeFichier()
    un Dim sListeCopie As String
    et Dim sListeFichier As String
    Ainsi qu'
    un ListeCopie() = Range("tblBasePubli[COURRIEL2]")
    un ListeFichier() = Range("tblBasePubli[CHEMIN CONCATÉNÉ]")
    Puis dans ma boucle
    un .cc = ListeCopie(i, 1)
    un .attachments = ListeFichier(i, 1)
    débarrasser

  • @rolandbarre5392
    @rolandbarre5392 4 ปีที่แล้ว +1

    Merci de votre tuto, c'es de l'or en barre ...

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  4 ปีที่แล้ว

      Et oui, et non un rôle en barre, n'est-il point 🤣😅

    • @rolandbarre5392
      @rolandbarre5392 4 ปีที่แล้ว +1

      Super en tutos .... de l'humour en prime !... Ne changez rien ... merci encore

  • @tiibphotography1409
    @tiibphotography1409 5 ปีที่แล้ว +1

    Merci beaucoup vous m'avez été d'une grande aide. J'ai du créer une macro de relance automatique par mail de synthèse je pensais ne pas y arriver mais grasse a vous j'ai réussis d'autant plus que j'ai pu en même temps comprendre la signification de chaque codage :) bonne continuation a vous.

  • @clairepoinfoux5377
    @clairepoinfoux5377 4 ปีที่แล้ว +1

    Oups, il semblerait qu'il manque un morceau de mon précédent commentaire... Alors le voici au complet.
    Bonjour Joël,
    Merci pour ce tuto. Super bien expliqué!
    J'ai modifié la macro pour avoir une personne en cc et que la pièce jointe soit personnalisée à chaque destinataire. J'ai donc ajouté :
    un Dim ListeCopie()
    et un Dim ListeFichier()
    un Dim sListeCopie As String
    et Dim sListeFichier As String
    Ainsi qu'
    un ListeCopie() = Range("tblBasePubli[COURRIEL2]")
    un ListeFichier() = Range("tblBasePubli[CHEMIN CONCATÉNÉ]")
    Puis dans ma boucle
    un .cc = ListeCopie(i, 1)
    un .attachments = ListeFichier(i, 1)
    Lorsque j'exécute la macro, j'ai un message "erreur automation" qui apparait... Je ne sais plus comment m'en débarrasser. Auriez-vous une idée de l'erreur que j'aurais pu commettre?
    Merci

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  4 ปีที่แล้ว

      Bonsoir Claire... Pas devant mon ordinateur mais ne manquerait-il pas un
      .Add derrière le.Attachments?
      Merci pour votre intérêt

    • @clairepoinfoux5377
      @clairepoinfoux5377 4 ปีที่แล้ว

      @@FormationExcelTousNiveaux Bonjour Joël, merci! J'ai maintenant une erreur 400 qui pop... Est-ce qu'il y a une configuration spéciale à faire avec Outlook?

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  4 ปีที่แล้ว

      Il semblerait que ce sujet d'erreur 400 soit débattu dans la page suivante, pour ma part, cela ne me dit rien
      fr.repairmsexcel.com/blog/fixer-excel-vba-erreur-400
      Bonne soirée

  • @Raks4100
    @Raks4100 5 ปีที่แล้ว +1

    Bonjour ,
    Je souhaite tout d'abord vous remercier pour ce tuto ! Celui-ci m'a permis en ayant aucune base en vba
    d'adapter votre macro pour envoyer des mails automatiquement ( pour ma part sans fichier joint ) ,
    avec beaucoup de patience et de recherche j'ai réussis à :
    - Envoyer depuis une boite mail de mon service attachée en second à Outlook !
    - Ajouter en objet du mail ce qui est inscrit en case commentaire
    - Ajouter en corps du mail ce qui est inscrit en case commentaire
    Maintenant je souhaiterais mettre des conditions sur les envois de mail afin d'envoyer uniquement que si les cases commentaires sont remplies .
    Sans votre tuto , je serais toujours nulle part et pour ça je vous remercierais jamais assez ( ça se voit que je suis hyper content ? :p )
    bref bonne journée à vous

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  5 ปีที่แล้ว

      Merci Karim pour ce retour enthousiaste. Si vous êtes parvenu à faire cela sans connaissance préalable, vous devriez vous en sortir pour le dernier point avec les structures de test...
      garbe.joel.free.fr/Macro_et_VBA_Excel.htm#Automatisation8
      Voyez et revenez pour nous dire si vous y êtes parvenu
      Bonne journée à vous

    • @Raks4100
      @Raks4100 5 ปีที่แล้ว

      Avec plaisir !
      J'ai partiellement atteint mon objectif , en effet la macro se lance si j'ajoute une valeur dans commentaire,
      mais je souhaite que celle-ci envoie uniquement aux destinataires qui ont la case commentaire = valeurs ,
      et n'envoie rien aux autres destinataires si la case est vide.
      Je regarderais votre lien ce soir à tête reposée , j'ai déjà assez bien avancé pour quelqu'un qui n'a jamais utilisé du vba .
      Merci pour votre réponse et votre soutient.
      Bonne journée à vous

  • @brouardju
    @brouardju 3 ปีที่แล้ว +1

    Bonjour,
    J'ai d'abord fais un test avec des adresses mail de test (la mienne, celle de deux ou trois collègues)
    Tout fonctionne parfaitement, le mail s'envoie avec la bonne pièce jointe à la bonne personne.
    Quand j'applique la macro à mon tableau client, elle plante au niveau du .send argument ou appel de procédure incorrect.
    J'ai tourné le problème dans tous les sens, si je mets mon adresse mail à la place de la première adresse client, ca passe (en pas à pas) et ca plante sur la seconde adresse... Avez-vous une idée?
    En tout cas merci car c'est un tuto très facile à appliquer, modifier et comprendre !

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  3 ปีที่แล้ว

      Bonjour,
      Pour me faire une idée, il me faudrait le fichier... Erreur de code ou Pb dans le tableau. Il faudrait faire le pas à pas en observant tout ce qui se passe
      Bonne journée

    • @brouardju
      @brouardju 3 ปีที่แล้ว

      @@FormationExcelTousNiveaux je ne comprend pas pour quelles raisons le code fonctionnerait pour certaines adresses et pas pour d'autre... J'ai fais le pas à pas, et je ne comprends pas ce qui diffère...

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  3 ปีที่แล้ว

      Re 😜 comme indiqué, je ne peux pas le savoir sans le fichier. Merci à vous.

  • @Michel88200
    @Michel88200 7 ปีที่แล้ว +1

    Bonjour Joël,
    Magnifique. Merci

  • @angeliquebravo3250
    @angeliquebravo3250 2 หลายเดือนก่อน +1

    Un grand merci pour ce tuto très bien expliqué et qui sert encore quasi 8 ans après.
    Je viens de envoyer un don pour vous remercier car pour moi qui débute totalement en VBA, c'est vraiment une grande aide. J'ai toutefois un souci car ma macro bloque à .Send et je souhaiterai pouvoir envoyer une pièce jointe spécifique à chaque mail dont le lien est dans une colonne du tableau excel. Pensez-vous que cela est possible svp ? Merci encore.

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  2 หลายเดือนก่อน

      Bonjour, je vous remercie infiniment pour ce don. Vous pouvez m'envoyer votre fichier, qui restera confidentiel, et je regarderai avant la fin de la semaine. Mail dispo en haut de mon site
      garbe.joel.free.fr/Macro_et_VBA_Excel.htm
      Peut être un élément de réponse dans le commentaire de Claire Point fou plus bas ?
      À plus tard

  • @BertrandSALZE
    @BertrandSALZE 11 หลายเดือนก่อน +1

    Bonsoir Joël,
    Merci pour ce tuto qui sert encore 7ans après sa publication.
    Si je peux abuser un peu...
    Je suis à la recherche d'un tuto qui expliquerait comment mettre un lien hypertexte dans le mail pour renvoyer directement au fichier Excel. Ce fichier est sur un serveur commun.
    Si vous avez des éléments cela serait très gentil. Merci
    Bertrand

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  11 หลายเดือนก่อน

      Je regarde si je peux donner une procédure cce week-end. À priori, pas besoin d'un tuto spécifique pour cela, juste un petit topo en réponse... À suivre donc...

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  11 หลายเดือนก่อน +1

      Voici un petit topo, à adapter en fonction de l'endroit où le lien doit être envoyé (ici, en dernière ligne du mail)...
      1 - Définir l'emplacement du fichier ...
      Dim sChem As String
      sChem = ActiveWorkbook.Path & "\" & ActiveWorkbook.Name
      2 - Créer une variable
      Dim strHTML As String 'Pour créer un Code HTML dans le corps du Mail'
      3 - "Remplir la variable...
      strHTML = "" & ActiveWorkbook.Name & ""
      4 - Insérer au-dessous de .body et....
      .htmlbody = .body & strHTML
      L'idéal est de remplacer tous les .body par .htmlbody si on veut ajouter ce lien ailleurs
      et cela devrait le faire
      Bon courage

    • @BertrandSALZE
      @BertrandSALZE 11 หลายเดือนก่อน +1

      Merci beaucoup pour la rapidité de la réponse. 🙏🏻

  • @AGUILAR7651
    @AGUILAR7651 4 ปีที่แล้ว

    Bonsoir Mr Garbe. Désolé de revenir sur une vidéo qui a 3 ans mais elle correspond tout à fait à mon besoin professionnel. J'ai en effet besoin d'envoyer des mails à différents utilisateurs tout en ayant la possibilité de choisir un fichier en pièce jointe. J'ai une erreur d'exécution de la Macro dès la définition de la 3° variable : Dim oMSGApp As Outlook .Application. J'ai un message "Erreur e compilation. Type défini par l'utilisateur non défini". J'utilise pourtant votre fichier "source" et je ne vois pas ce qui bloque. Auriez vous une idée ? Merci d'avance.

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  4 ปีที่แล้ว

      Bonjour,
      Excel restant utilisé, il n'y a pas encore de péremption 😜
      Pour le reste, je crois voir un espace avant le point de Application, à vérifier... Autre piste, vérifier si la référence à Outlook est cochée dans outils, références... Autre piste... Envoyez moi votre fichier que je jette un œil 😜

    • @AGUILAR7651
      @AGUILAR7651 4 ปีที่แล้ว +1

      Bonsoir et merci pour votre proposition d'aide. Je crois que j'ai trouvé le problème : à l'ouverture d'Outlook, il y a un message "avertissement de connexion limitée" auquel il faut répondre et qui devait empêcher la Macro de s'exécuter. Maintenant cela fonctionne très bien. En tout cas merci encore pour votre disponibilité et quelle chance vous avez de savoir coder en VBA en direct... Cela force le respect. Je mesure le chemin qui me reste à parcourir....

  • @fabiengeniaut6115
    @fabiengeniaut6115 7 ปีที่แล้ว +2

    Bonjour
    Très interessant votre tuto
    Moi je cherche le moyen d'envoyer un mail a chaque fois que je rajoute une ligne dans le tableau
    je ne sais pas si c'est possible .
    Merci

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  7 ปีที่แล้ว

      +Fabien GENIAUT Bonjour Fabien et merci pour votre commentaire. Tout est possible (ou presque)... Il convient de bien prévoir ce qui doit réellement déclencher l'envoi, ce qui doit être envoyé, et gérer cela avec le VBA. Le plus compliqué est bien souvent de bien savoir ce qu'on veut faire vraiment...
      Bon courage

  • @loris6145
    @loris6145 5 ปีที่แล้ว +1

    Bonjour Joël
    Est il possible d'ajouter une signature avec photo (logo de l'entreprise) directement dans le body. Je fais des chr 10 pour revenir à la ligne afin de mettre la signatures dans le corps du mail mais pour la photo impossible...
    Merci

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  5 ปีที่แล้ว

      Bonjour Loris
      Perso, je ne connais pas trop, mais peut-être que la discussion suivante peut apporter la réponse...
      www.developpez.net/forums/d1197726/logiciels/microsoft-office/excel/macros-vba-excel/inserer-image-mail-vba-outlook/
      Bon courage

    • @loris6145
      @loris6145 5 ปีที่แล้ว

      @@FormationExcelTousNiveaux bonjour Joël
      J'ai réussi en mettant le body en HTMLbody. J'ai ajouté tout le mail en ligne de code avec des "" pour les sauts de ligne. J'ai intégré la signature comme si elle faisait partie du mail puis j'ai ajouté la photo en mettant "

  • @mickaelalberola7037
    @mickaelalberola7037 5 ปีที่แล้ว +1

    Bonjour, est il vraiment possible de télécharger automatiquement un fichier autre que exel (stocké sur le PC) et de l'envoyer automatiquement? je n'y arrive pas. (j'avoue que je n'est pas un super niveau pour le moment...

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  5 ปีที่แล้ว

      Bonjour Mickael, dans le tuto, j'ai pris un fichier Excel, mais cela fonctionne avec tout type de fichier. En revanche, cela fonctionne avec Outlook, pas forcément avec d'autres systemes de messagerie
      Bon courage

  • @bgtec
    @bgtec 5 ปีที่แล้ว

    Bonjour Joël
    Trop cool ce tuto. ça m'est vraiment très utile. Tout est bien expliqué et très bien détaillé. encore merci.
    Mais j'ai un souci je voudrai s'il te plait que vous faites un tuto sur la configuration de Ms Outlook. je n'y parviens pas. je suis bloqué au niveau des serveur entrant et sortant. jai déjà fait plusieurs essais sans succès. A l'aide sil te plait

  • @remiboilard3241
    @remiboilard3241 5 ปีที่แล้ว +1

    Bonjour, est il possible de faire la même chose mais pour Gmail ?

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  5 ปีที่แล้ว

      Bonjour, je ne sais pas si c'est possible, mais perso, je ne sais pas faire
      🤔😕

  • @celinececile5194
    @celinececile5194 4 ปีที่แล้ว +1

    J'ai trouvé cela facile pour une fois et je te remercie, très bonne pédagogie. J'ai deux questions 1- si je change de classeur excel mais que je nomme chaque fois mon tableau de la même façon, est ce que cela fonctionnera ? 2 - comment faire pour changer le message sans entrer à chaque fois dans la macro. Dernier point, tu ne parles pas de la ligne objet de Outlook (je vais revoir ta vidéo pour savoir si j'ai loupé quelque chose. Merci pour ton aide

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  4 ปีที่แล้ว

      Bonsoir et merci... Pour la question 1... Oui, pour le reste, Il pourrait être possible de paramétrer l'objet ou le texte du message dans une cellule Excel, et aller chercher cette cellule dans la macro. 😜👍

  • @dimitrinimpa8066
    @dimitrinimpa8066 4 ปีที่แล้ว +1

    Bonjour et merci pour ce tutoriel utile.
    je voudrais savoir s'il est possible de mettre une image dans le corps du mail directement, et si oui comment ?

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  4 ปีที่แล้ว

      Merci à vous ! Possible? probablement ☺️
      Comment ? Hors de mes connaissances ?
      Bonne journée

  • @marvinnormand9
    @marvinnormand9 6 ปีที่แล้ว +2

    Bonjour Joël,
    Vidéo très intéressante et bien expliquée.
    Cela correspond presque à ce que je recherche. Depuis un mois, j'essaie de trouver une solution pour envoyer un mail unique et non un ensemble de mail.
    Dans ma base excel, j'ai des lignes qui s'incrémentent automatiquement. Ainsi, dans la colonne "i" j'ai mes mails et dans la colonne "j", j'ai créée un menu déroulant avec OUI/NON.
    MA DEMANDE:
    Sur base de votre programmation, je souhaiterais envoyer (avec mon fichier) au départ des données qui se situent dans le sheet(6) colonne i (mail) et j(OUI/NON) un mail unique après sélection du OUI (les autres lignes seraient évidemment sur NON).
    J'ai essayé de retravailler avec votre fichier qui fonctionne à merveille ! Mais pour l'instant, j'ai 3 lignes dans mon fichier excel et votre programmation génère 3 mails que je vois gràce à Display et non send.
    Pouvez-vous m'aider SVP, j'adore faire des recherches, créer, mais là, je désespère...
    Bonne fête,
    Marc

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  6 ปีที่แล้ว +1

      Bonjour Marvin et merci...
      Par rapport à votre question, je ne comprends pas où se situe le problème, si vous avez 3 lignes à "oui", il est normal d'avoir 3 mails ? Pourriez-vous être plus précis, ou m'envoyer votre fichier avec des explications complémentaires...

    • @marvinnormand9
      @marvinnormand9 6 ปีที่แล้ว +1

      @@FormationExcelTousNiveaux Bonjour Joël,
      Merci de votre réponse. j'ai bien 3 lignes, mais 1 seul est sur OUI (mon Gmail) mais lorsque je lance votre programmation, j'obtiens bien 3 messages avec attach en visuel alors que 2 sont sur NON.
      Rappel:
      J'ai un tableau avec 10 colonnes dans le sheet (6)
      - Les mails se trouvent dans la colonne "i"
      - Le OUI/NON (menu déroulant) dans la colonne "j"
      Je souhaiterais que lorsque je sélectionne le OUI dans la colonne "j", il envoie mon bon de commande UNIQUEMENT au mail correspondant de la même ligne.
      Voici la programmation:
      Option Explicit
      _____________________________________________________________________
      Sub EnvoiMail()
      Dim ListeDest()
      Dim ListeComment()
      Dim ListeRio()
      Dim ListeNom()
      Dim i As Long
      Dim oMsgApp As Object
      Dim oMsg As Object
      Dim sListeDest As String
      Dim sFichier As String
      Dim fname 'déclaration de la variable pour la voix (voir plus bas juste après Display)
      Dim objvoice As Object 'déclaration de la variable pour la voix (voir plus bas juste après Display)
      sFichier = Application.GetOpenFilename(, , "Veuillez sélectionner le bon de commande de matériel CGC à envoyer SVP !")
      If sFichier = "" Then
      MsgBox "Aucun fichier sélectionné, opération annulée"
      Exit Sub
      End If
      Set oMsgApp = CreateObject("Outlook.Application")
      ListeDest() = Range("Table3[Mail]")
      ListeComment() = Range("Table3[Event]")
      ListeRio() = Range("Table3[RIO]")
      ListeNom() = Range("Table3[Nom]")
      For i = LBound(ListeDest, 1) To UBound(ListeDest, 1)
      Set oMsg = oMsgApp.CreateItem(0)
      With oMsg
      .To = ListeDest(i, 1)
      .Attachments.ADD sFichier
      .Subject = "Votre bon de commande de matériel: Référence CGC/RIO -" & ListeRio(i, 1) & _
      " - " & "Référence à reprendre sur toutes vos correspondances."
      .Body = "Bonjour" & " " & ListeNom(i, 1) & Chr(10) & Chr(13) & _
      "Veuillez trouver ci-joint le bon de commande pour votre événement:" & Chr(10) & Chr(13) & _
      ListeComment(i, 1) & Chr(10) & Chr(13) & "Bonne journée et vif succès avec votre événement !" & Chr(10) & Chr(13) & _
      "Direction de la communication - CGC" & Chr(10) & Chr(13) & "Desk Event"
      .Display 'or Send
      Set objvoice = CreateObject("sapi.spvoice") 'texte d'accueil à l'ouverture du fichier (voix: voir plus haut dans les déclarations des variables)
      objvoice.Speak ("Your order has been sent successfully") 'texte d'accueil à l'ouverture du fichier (voix: voir plus haut dans les déclarations des variables)
      End With
      Set oMsg = Nothing
      Next
      oMsgApp.Quit
      Set oMsgApp = Nothing
      'MsgBox "Votre commande a bien été envoyée." & Chr(10) & Chr(13) & "En cas de problème," & Chr(10) & Chr(13) & _
      '"veuillez contacter votre administrateur." & _
      'Chr(10) & Chr(13) & "Marc Normand - GCG/Event - 02/642 65 06. "
      End Sub
      Merci et passez de bonnes fêtes.

    • @marvinnormand9
      @marvinnormand9 6 ปีที่แล้ว +1

      J'ai oublié de vous dire: Lorsque le OUI est sélectionné dans le sheet (6, col j), c'est en appuyant sur le bouton(macro) dans le sheet(4) que la procédure commence.

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  6 ปีที่แล้ว +1

      Bonsoir
      Je comprends mieux
      Tout d'abord, sans test du "Oui", Excel ne peut pas deviner qu'il doit omettre des destinataire.
      Par ailleurs le chiffre x à la fin de LisreDest(i, x) doit correspondre au numéro de colonne où se trouve l'info.
      Si le mail se trouve en colonne I, on devrait avoir
      . to = ListeDest(i, 9)
      et après le for i= etccc
      on devrait avoir le test
      if lcase(listeDest(i, 10)) = "oui"
      then
      sans oublier le
      End if
      juste avant le next
      En espérant pas d'erreur dans ma réponse faite sans filet...
      Joyeux Noël

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  6 ปีที่แล้ว +1

      OK, errer de ma part après vérification... concernant le ListeDest(i, 9), il faut bien laisser le 1 car la listeDest ne se rapproche qu'à une seule colonne dans notre exercice.
      En revanche, il faut bien mettre un test, qui ressemblerait du coup à
      if ListeOui(i, 1) = "OUI" then
      en ayant pris soin de définir la variable tableau ListeOui comme vous l'avez fait pour les autres....

  • @marvinnormand9
    @marvinnormand9 6 ปีที่แล้ว

    Bonjour Joël,
    J'ai réalisé avec votre appui, une base Excel VBA pour envoyer un mail avec pièce jointe. Cela marche super bien !
    Maintenant, je souhaiterais mettre en GRAS/COULEUR/SOULIGNE/TAILLE etc. certaines parties du mail automatiquement. Lorsque je clique sur le bouton qui lance la macro, celui-ci envoie le mail automatiquement aux destinataires . JE NE SOUHAITE PAS INTERVENIR DANS LE MAIL MOI-MÊME pour mettre en valeur le mail.
    Avez-vous un tuto qui explique cela ? ou pouvez-vous m'aider.
    D'avance merci,
    Marc

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  6 ปีที่แล้ว +1

      Bonjour Marc,
      Vous allez devoir rechercher du côté d'experts plus pointus que moi, car je ne sais pas faire, et n'ai pas de temps à consacrer à cet aspect. Bon courage

  • @mefmosaic
    @mefmosaic 5 ปีที่แล้ว +1

    Bonjour Joël,
    J'ai utilisé votre macro mais j'ai une erreur d'exécution 13, incompatibilité de type à la ligne :
    ListeDest = Range("tblbase[Mail]")
    J'ai pourtant scrupuleusement suivi votre tuto... Des suggestions ?
    Merci par avance.
    Cdlt.
    Jérôme
    .

  • @fabiengeniaut6115
    @fabiengeniaut6115 7 ปีที่แล้ว +1

    comment faire avec votre macro pour mail par mail et pas tous d'un coup Merci je n'arrive pas a trouvé

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  7 ปีที่แล้ว

      Merci à vous Fabien,
      Sauf erreur de ma part, et si j'ai bien compris, il suffirait, à l'intérieur de la boucle
      For i = ...
      les instructions pour l'envoi...
      next
      d'ajouter un test sur la condition nécessaire pour envoyer le mail, ce qui donnerait :
      for i= ...
      if condition ?
      les instructions pour l'envoi
      end if
      next
      en espérant avoir répondu à voter attente,

    • @fabiengeniaut6115
      @fabiengeniaut6115 7 ปีที่แล้ว +1

      Je ne comprends pas pourquoi faire une condition . Je vais essayer de trouver Merci de vos conseils

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  7 ปีที่แล้ว

      +Fabien GENIAUT ne faut-il pas faire la différence entre ceux qui doivent recevoir le mail et les autres ?
      À quelle condition un utilisateur doit il recevoir le mail...
      D'où le test...
      Sinon, on peut les supprimer de la liste 😒

  • @charlesvanweyenbergh5286
    @charlesvanweyenbergh5286 2 ปีที่แล้ว

    Bonjour Joël,
    Est-il possible qu'en lieu et place de la PJ .xls en attaché soit plutôt inséré dans le corps du mail la feuille .xls ?
    Merci d'avance de tes commentaires
    ABelle journée
    A bientôt
    Charles.

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  2 ปีที่แล้ว

      Bonjour Charles. Je ne saurais pas le faire sans rechercher moi-même la solution ailleurs. Bon courage

  • @audreycoiquaud2404
    @audreycoiquaud2404 4 ปีที่แล้ว +1

    Bonjour Joël,
    Tout d'abord, merci pour cet excellent tuto!!!
    J'ai tout de même une question. Je souhaite envoyer un mail distinct à plusieurs destinataires pour chaque ligne de mon tableau (comme un publipostage word). Je m'initie au vba et j'aimerais écrire un code qui individualise la liste des destinataires par ligne du tableau. Pourriez-vous m'aider, svp?
    Je vous remercie et souhaite une excellente journée.
    Audrey

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  4 ปีที่แล้ว

      Bonsoir Audrey
      il me semble que la logique est exposée dans le tuto ? pour cela, il faut visionner la vidéo jusqu'à la fin, car c'est là que ça se passe... si une phrase spécifique doit être ajoutée à chaque destinataire, vous pouvez la prévoir dans une colonne supplémentaire et l'intégrer par code dans le corps du mail en concaténation, comme pour le reste de message.
      Bon courage

    • @audreycoiquaud2404
      @audreycoiquaud2404 4 ปีที่แล้ว

      @@FormationExcelTousNiveaux
      Merci infiniment Joël!!!!
      Grâce à vos indications j'ai réussi à individualiser les mails et adresser chacun à plusieurs destinataires.
      Encore merci.
      Très bonne journée à vous
      Audrey

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  4 ปีที่แล้ว

      merci pour ce retour 👍👌

  • @rousseladrien662
    @rousseladrien662 4 ปีที่แล้ว

    peut on faire pareil avec word?

  • @vincentbodart3762
    @vincentbodart3762 6 ปีที่แล้ว

    super je cherchais une solution comme ca pour mes organisations. mais j'aimerais pouvoir faire deux macro dans mon fichier un comme le votre que j'ai fais mais également un en sélectionnant les destinataires de la liste et pas a tous. c'est possible? bien a vousVincent

  • @nathalieberckmans5399
    @nathalieberckmans5399 4 ปีที่แล้ว

    bonjour, super tuto. si je ne vaux pas envoyer de pièce jointe comment dois je faire? bien à vous

  • @sarahjouannin8828
    @sarahjouannin8828 2 ปีที่แล้ว +1

    Bonjour Joël,
    Merci pour ce tuto ! Je ne sais pas si vous pourriez m'aider mais j'ai déjà un module que j'ai récupérer d'un collaborateur mais je ne connais rien du tout à la VBA Excel.. Il fonctionnait très bien mais j'aimerais ajouter la possibilité de mettre des pièces jointes de manière automatique pour mes 95 mails qui sont tous différents. Après avoir demandé sur des forums je n'ai aucun retour sur une solution possible... Est-il possible de vous l'envoyer pour avoir votre avis ?
    Merci d'avance et bonne journée :)

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  2 ปีที่แล้ว +1

      Bonjour Sarah
      Vous pouvez communiquer par mail, et je vous dirai si je peux faire quelque chose. Avec votre fichier, que je puisse me rendre compte, et les explications de votre attente.

    • @sarahjouannin8828
      @sarahjouannin8828 2 ปีที่แล้ว

      @@FormationExcelTousNiveaux merci beaucoup, c’est fait !

  • @brunoguiheux520
    @brunoguiheux520 ปีที่แล้ว

    Bonjour Joël, peut-on envoyer plusieurs fichiers en même temps?

  • @oliviergodart1951
    @oliviergodart1951 ปีที่แล้ว

    Bonjour Joël,
    J'ai toujours erreur de compilation: variable non définie.
    Merci pour votre retour
    B à V.

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  ปีที่แล้ว

      Bonjour Olivier, vérifiez bien l'orthographe de votre variable et vérifiez si cette variable est bien déclarée, au bon endroit...

    • @oliviergodart1951
      @oliviergodart1951 ปีที่แล้ว

      @@FormationExcelTousNiveaux Bonjour, Avez vous une adresse pour vous envoyer le texte de ma macro?
      Toujours le même problème, Erreur de compilation, variable non définie 😞

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  ปีที่แล้ว

      Bonjour Olivier
      garbe.joel@free.fr

    • @oliviergodart1951
      @oliviergodart1951 10 หลายเดือนก่อน

      Bonjour Joel, tu as changé d'adresse mail?@@FormationExcelTousNiveaux

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  10 หลายเดือนก่อน

      ​@@oliviergodart1951bonjour Olivier. Tout dépend par rapport à quand, j'en ai plusieurs en fait, et je ne les lis pas tous les jours... Retraite oblige 🤪

  • @jcp9075
    @jcp9075 4 ปีที่แล้ว +1

    Bonjour Merci pour ces explications cela fonctionne parfaitement ! Toutefois comment est il possible d'attacher un fichier différent pour chaque ligne ?
    merci d'avance ^^

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  4 ปีที่แล้ว +1

      Bonjour, pour cela, il serait judicieux de prévoir le chemin avec le nom de fichier dans la base de données, puis, dans la boucle VBA, prendre en compte cette information avec la même logique que pour l'adresse mail
      Bon courage

    • @jcp9075
      @jcp9075 4 ปีที่แล้ว +1

      @@FormationExcelTousNiveaux entendu je vais me concentrer là dessus , merci pour votre aide !

  • @hinanmedjdoub8612
    @hinanmedjdoub8612 5 ปีที่แล้ว

    Bonjour,
    Svp, comment faire pour envoyer un email de rappel à 10j avant échéance à un destinataire, tout en mettant d autres destinataires en CC ou bien CCI
    Je vous remercie :)

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  5 ปีที่แล้ว

      Bonjour Hinan,
      pour la date, prevoir une procédure qui testera la date d'échéance
      if date = échéance - 10
      avant l'instruction send
      Pour destinataires en copie, vous avez. cc
      et. cci pour copie cachée
      Bon courage

  • @MrLudo22
    @MrLudo22 5 ปีที่แล้ว +1

    Bonjour Joël,
    Merci pour cet excellent travail généreux qui simplifie grandement les choses ;)
    Une question, est-il possible d'envoyer plusieurs documents en pièces jointes ?
    Bonne journée?

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  5 ปีที่แล้ว

      Bonjour Ludovic, merci
      Pour envoyer plusieurs fichier, il suffit d'utiliser plusieurs fois la l.'instruction
      .Attachments.Add etc
      Bonne journée

  • @richardmarc2687
    @richardmarc2687 5 ปีที่แล้ว +1

    Bonjour Joël,
    Super le tuto !! J'ai la même erreur d'exécution 13 que @mefmosaic ! J'ai repris point par point le code corrigé que vous lui avez retourné dans votre dernière réponse. Il est identique au mien sauf qu'à la fin de cette ligne :
    ListeDest = Range("tblBase[Mail]") ; le nom de mon tableau étant "tblBase" et la colonne des adresses étant "Mail", il me manquait le "point Value" que je me suis empressé d'ajouter tout heureux d'avoir déniché l'erreur. Hélas non, j'ai toujours "Erreur d'exécution 13" qui apparait au milieu de mon écran pour "incompatibilité de type". Avez vous d'autres suggestions de corrections pour ce code ?
    Bonne fin de journée et merci pour le tuto
    Marc

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  5 ปีที่แล้ว

      Bonjour Marc,
      Le plus sûr edt de m'envoyer le fichief...
      joel.garbe@sfr.fr
      Bonne soirée

    • @celinececile5194
      @celinececile5194 4 ปีที่แล้ว

      Il faut remblacer Range("tblBase[mail]") par Range("listedest[email]") pour moi ça a résolu mon problème

    • @lionelsutra9438
      @lionelsutra9438 2 ปีที่แล้ว

      @@celinececile5194 desole mais pour moi non, j'ai toujours le même message d'erreur.
      listeDest() = Range("listedest[Mail]") => il semble qu'il faut un (;) oui ok mais ou??

  • @arnoldkouassi9812
    @arnoldkouassi9812 6 ปีที่แล้ว

    bonjour svp ! comment envoyé a d'autre email comme yahoo,gmail et bien d'autre svp urgent *

  • @gregsti
    @gregsti 7 ปีที่แล้ว +1

    Très bien ! Y a plus qu'à !! :)

  • @mefmosaic
    @mefmosaic 5 ปีที่แล้ว

    Voici le code avec lequel j'ai l'erreur d'éxécution 13, incompatibilité de type à la ligne :
    ListeDest = Range("tblbase[Courriel]")
    Où est l'erreur ?
    Code :
    Option Explicit
    Sub envoimail()
    'Déclaration des variables
    Dim ListeDest()
    Dim i As Long
    Dim oMsgApp As Object
    Dim oMsg As Object
    Dim sListeDest As String
    Dim sFichier As String
    'Fichier que l'on souhaite envoyer
    sFichier = Application.GetOpenFilename(, , "Sélectionnez le fichier à envoyer")
    If sFichier = "" Then
    MsgBox ("Aucun fichier sélectionné, opération annulée")
    Exit Sub
    End If
    Set oMsgApp = CreateObject("outlook.application")
    'Gestion de la liste des destinataires (le tableau se remplit automatiquement)
    ListeDest = Range("tblbase[Courriel]")
    sListeDest = ""
    'Mise sous forme d'une chaine de caractères sListeDest
    For i = LBound(ListeDest(), 1) To UBound(ListeDest(), 1)
    sListeDest = sListeDest & ";" & ListeDest(i, 1)
    Next
    'Message par lui-même
    Set oMsg = oMsgApp.CreateItem(0)
    'Contenu du message
    With oMsg
    .To = sListeDest
    .Attachments.Add sFichier
    .Subject = "Fichier de la semaine"
    .Body = "Veuillez trouver ci-joint le fichier de la semaine" & Chr(10) & Chr(13) & "Bonne journée"
    .Send
    End With
    'Libération de l'espace mémoire de l'application Outlook qui s'est ouverte
    oMsgApp.Quit
    Set oMsgApp = Nothing
    Set oMsg = Nothing
    MsgBox "Mail envoyé !!"
    End Sub

    • @FormationExcelTousNiveaux
      @FormationExcelTousNiveaux  5 ปีที่แล้ว

      Bonsoir Jérôme,
      Je pensais avoir répondu mais je ne vois pas la réponse...
      Essayez aves les parenthèses, sinon, envoyez moi votre fichier...
      Joël
      joel.garbe@sfr.fr

    • @mefmosaic
      @mefmosaic 5 ปีที่แล้ว

      @@FormationExcelTousNiveaux Bonjour,
      Comment faire pour vous envoyer la macro ?
      A défaut je la copie colle ci-dessous :
      Sub envoimail()
      'Déclaration des variables
      Dim ListeDest()
      Dim i As Long
      Dim oMsgApp As Object
      Dim oMsg As Object
      Dim sListeDest As String
      Dim sFichier As String
      'Fichier que l'on souhaite envoyer
      sFichier = Application.GetOpenFilename(, , "Sélectionnez le fichier à envoyer")
      If sFichier = "" Then
      MsgBox ("Aucun fichier sélectionné, opération annulée")
      Exit Sub
      End If
      Set oMsgApp = CreateObject("outlook.application")
      'Gestion de la liste des destinataires (le tableau se remplit automatiquement)
      ListeDest = Range("tblbase[Courriel]").Value
      sListeDest = ""
      'Mise sous forme d'une chaine de caractères sListeDest
      For i = LBound(ListeDest(), 1) To UBound(ListeDest(), 1)
      sListeDest = sListeDest & ";" & ListeDest(i, 1)
      Next
      'Message par lui-même
      Set oMsg = oMsgApp.CreateItem(0)
      'Contenu du message
      With oMsg
      .To = sListeDest
      .Attachments.Add sFichier
      .Subject = "Fichier de la semaine"
      .Body = "Veuillez trouver ci-joint le fichier de la semaine" & Chr(10) & Chr(13) & "Bonne journée"
      .Send
      End With
      'Libération de l'espace mémoire de l'application Outlook qui s'est ouverte
      oMsgApp.Quit
      Set oMsgApp = Nothing
      Set oMsg = Nothing
      MsgBox "Mail envoyé !!"
      End Sub

  • @barbaradolciani2152
    @barbaradolciani2152 4 ปีที่แล้ว +1

    super tuto merci,

  • @marvinnormand9
    @marvinnormand9 5 ปีที่แล้ว

    Bonjour Joël,
    J'ai une petite question PAR RAPPORT A VOTRE TUTO.
    1) Lorsque je ne sélectionne pas de fichier(bon de commande) et que je clique sur OPEN, RIEN NE SE PASSE !
    - Je souhaiterais que le message Box puisse indiquer que rien n'a été sélectionné et rien ne se passe.
    2) Lorsque je ferme avec la X ou CANCEL (sans avoir sélectionné le fichier, il m'indique un message box "voulez-vous envoyer cet E-Mail ? si je clique YES, il continue la procédure et m'indique un DEBUG.
    Par contre, si je clique NO, la procédure s'arrête.
    - Je souhaiterais que lorque le fichier n'est pas sélectionné et que je ferme par la croix X ou cancel, la procédure s'arrête avec un MsgBox rien de sélectionné. Veuillez sélectionner un fichier.
    Pouvez-vous m'aider ?
    Marc
    Merci et belle journée

  • @brunoguiheux520
    @brunoguiheux520 ปีที่แล้ว +1

    Bonjour,

  • @gouach57
    @gouach57 4 ปีที่แล้ว +1

    MERCI beaucoup

  • @paulharvey3564
    @paulharvey3564 4 ปีที่แล้ว +1

    Bonjour M. Joel
    Tout d’abord merci beaucoup pour les tutos. Tres bien fait et m'aide beaucoup.
    Ma question c'est j'ai pas Outlook 13 ou autre dans mon ordi. et pour envoyer des email avec vba il le faut. es qu’il y a autre moyen???
    Merci d'avance
    Paul Harvey
    tobiepaul@hotmail.com

  • @frogeregis
    @frogeregis 7 ปีที่แล้ว +1

    Merci