Comment envoyer des courriels à partir d'une feuille de calcul Excel à l'aide de scripts VBA

  • William Charles
  • 16
  • 4023
  • 956
Publicité

Envoyer des courriels à partir de Microsoft Excel ne nécessite que quelques scripts simples. Ajoutez cette fonctionnalité à vos feuilles de calcul et vous pourrez vraiment améliorer vos performances dans Excel..

Nous avons traité de nombreuses macros Excel excellentes, capables de réaliser les mêmes tâches que les scripts VBA, mais sans connaissances en programmation. Mais il existe de nombreuses choses avancées que vous ne pouvez faire qu'avec VBA, comme créer un rapport sous forme de feuille de calcul avec toutes les informations de votre ordinateur..

Vous préférez regarder ce tutoriel en vidéo? Nous vous avons couvert!

Pourquoi envoyer un email à partir d'Excel?

Il existe de nombreuses raisons pour lesquelles vous pouvez envoyer un courrier électronique à partir de Microsoft Excel..

Vous avez peut-être des employés qui mettent à jour des documents ou des feuilles de calcul toutes les semaines et vous souhaitez recevoir une notification par courrier électronique indiquant le moment où ces mises à jour sont effectuées. Ou vous pourriez avoir une feuille de calcul de contacts et vous voulez envoyer un email à tous à la fois.

Vous pensez probablement que la création d'un script pour une diffusion de courrier électronique à partir d'Excel sera compliquée. Ce n'est pas le cas du tout.

La technique décrite dans cet article utilisera une fonctionnalité disponible depuis longtemps dans Excel VBA., Objets de données de collaboration (CDO).

CDO est un composant de messagerie utilisé dans Windows depuis les toutes premières générations du système d'exploitation. Il s’appelait CDONTS et, avec l’avènement de Windows 2000 et XP, a été remplacé par “CDO pour Windows 2000”. Ce composant est déjà inclus dans votre installation VBA sous Microsoft Word ou Excel et est prêt à être utilisé.

L'utilisation de ce composant facilite l'envoi de courriers électroniques à partir de produits Windows avec VBA. Dans cet exemple, vous utiliserez le composant CDO dans Excel pour envoyer un courrier électronique contenant les résultats d'une cellule Excel spécifique..

Étape 1: créer une macro VBA

La première étape consiste à accéder à l'onglet Développeur Excel..

Dans l'onglet Développeur, cliquez sur Insérer dans la zone de contrôle, puis sélectionnez un bouton de commande.

Dessinez-le dans la feuille, puis créez une nouvelle macro en cliquant sur Les macros dans le ruban développeur.

Lorsque vous cliquez sur le Créer bouton, ça va ouvrir l'éditeur VBA.

Ajoutez la référence à la bibliothèque CDO en accédant à Outils > Références dans l'éditeur.

Faites défiler la liste jusqu'à trouver Bibliothèque Microsoft CDO pour Windows 2000. Cochez la case et cliquez D'accord.

Quand vous cliquez D'accord, notez le nom de la fonction où vous collez le script. Vous en aurez besoin plus tard.

Étape 2: Configuration du CDO “De” et “À” Des champs

Pour ce faire, vous devez d’abord créer les objets courrier et définir tous les champs nécessaires à l’envoi du courrier électronique..

Gardez à l’esprit que, si de nombreux champs sont facultatifs, le De et À les champs sont obligatoires.

Dim CDO_Mail As Object Dim CDO_Config As Object Dim SMTP_Config As Variant Dim strSubject As String String Dim strFrom As String Dim strTo As String Dim strCc As String Dim strBcc As String Dim strBody As String strSubject = "Résultats de la feuille de calcul Excel" strFrom = "rdube02 @ gmail .com "strTo =" [email protected] "strCc =" "strBcc =" "strBody =" Les résultats totaux pour ce trimestre sont les suivants: "& Str (Sheet1.Cells (2, 1))

La bonne chose à ce sujet est que vous pouvez créer n’importe quelle chaîne pour personnaliser un message électronique complet et l’attribuer à la liste. strBody variable.

Regroupez les éléments du message en utilisant le Et chaîne pour insérer les données de n'importe quelle feuille Microsoft Excel directement dans le message électronique, comme indiqué ci-dessus.

Étape 3: Configurez CDO pour utiliser un SMTP externe

La prochaine section de code est celle où vous allez configurer CDO pour utiliser tout serveur SMTP externe afin d’envoyer le courrier électronique..

Cet exemple est une configuration non-SSL via Gmail. CDO est capable de SSL, mais cela sort du cadre de cet article. Si vous devez utiliser SSL, ce code avancé dans Github peut vous aider..

Définir CDO_Mail = CreateObject ("CDO.Message") lors d'une erreur GoTo Error_Handling Définir CDO_Config = CreateObject ("CDO.Configuration") CDO_Config.Load -1 Définir SMTP_Config = CDO_Config.DCield .com / cdo / configuration / sendusing ") = 2 .Item (" http://schemas.microsoft.com/cdo/configuration/smtpserver ") =" smtp.gmail.com ".Item (" http: // schemas .microsoft.com / cdo / configuration / smtpauthenticate ") = 1 .Item (" http://schemas.microsoft.com/cdo/configuration/sendusername ") =" [email protected] ".Item (" http: / /schemas.microsoft.com/cdo/configuration/sendpassword ") =" mot_passe ".Item (" http://schemas.microsoft.com/cdo/configuration/smtpserverport ") = 25 .Item (" http: // schemas .microsoft.com / cdo / configuration / smtpusessl ") = True. Fin de la mise à jour avec avec CDO_Mail. Set .Configuration = CDO_Config Fin avec

Étape 4: finaliser la configuration de CDO

Maintenant que vous avez configuré la connexion au serveur SMTP pour l'envoi du courrier électronique, il ne vous reste plus qu'à remplir les champs correspondants. Objet CDO_Mail, et émettre le Envoyer commander.

Voici comment vous faites cela:

CDO_Mail.Subject = strSubject CDO_Mail.From = strFrom CDO_Mail.To = strTo CDO_Mail.TextBody = strBody CDO_Mail.CC = strCc CDO_Mail.BCC = strBcc CDO_Mail.Send Error_Handling:

Il n'y aura aucune boîte de dialogue ou message d'alerte de sécurité, ce qui peut arriver lorsque vous utilisez l'objet courrier Outlook..

CDO rassemble simplement le courrier électronique et utilise les informations de connexion de votre serveur SMTP pour envoyer le message. C'est le moyen le plus simple d'intégrer le courrier électronique dans les scripts VBA Microsoft Word ou Excel.

Pour connecter votre bouton de commande à ce script, allez dans l'éditeur de code et cliquez sur Feuille1 pour afficher le code VBA pour cette feuille de calcul.

Tapez le nom de la fonction où vous avez collé le script ci-dessus.

Voici à quoi ressemble le message que j'ai reçu dans ma boîte de réception:

Remarque: Si vous recevez une erreur qui lit Le transport n'a pas réussi à se connecter au serveur, assurez-vous d'avoir entré le nom d'utilisateur, le mot de passe, le serveur SMTP et le numéro de port corrects dans les lignes de code répertoriées ci-dessous Avec SMTP_Config.

Allez plus loin et automatisez l'ensemble du processus

C'est bien beau de pouvoir envoyer des courriels à partir d'Excel d'une simple pression sur un bouton. Toutefois, vous souhaiterez peut-être utiliser cette fonctionnalité régulièrement. Dans ce cas, il serait judicieux d'automatiser le processus. 5 Ressources pour les macros Excel pour automatiser vos feuilles de calcul 5 Ressources pour les macros Excel pour automatiser vos feuilles de calcul Vous recherchez des macros Excel? Voici cinq sites qui ont ce que vous cherchez. .

Pour ce faire, vous devrez modifier la macro. Dirigez-vous vers Visual Basic Editor et copiez-collez l'intégralité du code que nous avons assemblé..

Ensuite, sélectionnez ThisWorkbook du Projet hiérarchie.

Dans les deux champs déroulants en haut de la fenêtre de code, sélectionnez Cahier de travail et sélectionnez Ouvrir dans le menu déroulant Méthodes.

Collez le script email ci-dessus dans Private Sub Workbook_Open ().

Cela va exécuter la macro chaque fois que vous ouvrez le fichier Excel.

Ensuite, ouvrez Planificateur de tâches.

Vous allez utiliser cet outil pour demander à Windows d’ouvrir automatiquement la feuille de calcul à intervalles réguliers. À ce moment, votre macro sera lancée en envoyant le courrier électronique..

Sélectionner Créer une tâche de base… du action menu et continuez votre chemin dans l’assistant jusqu’à ce que vous atteigniez le action écran.

Sélectionner Commencer un programme et cliquez Prochain.

Utilisez le Feuilleter bouton pour trouver l'emplacement de Microsoft Excel sur votre ordinateur, ou copiez et collez le chemin dans le Programme / script champ.

Ensuite, entrez le chemin de votre document Microsoft Excel dans le répertoire Ajouter des arguments champ.

Terminez l'assistant et votre planification sera en place.

Effectuer un test en programmant l'action Comment vider automatiquement la corbeille dans un programme et libérer de l'espace inutilisé Comment vider automatiquement la corbeille dans un programme et libérer de l'espace inutilisé Si vous ne videz pas régulièrement le dispositif de recyclage Bin, cela pourrait gaspiller des gigaoctets d'espace sur votre lecteur de données. Mais maintenant, Windows 10 peut le vider automatiquement selon un planning. pendant quelques minutes à l'avenir, puis modifiez la tâche une fois que vous pouvez confirmer que cela fonctionne.

Remarque: Vous devrez peut-être ajuster vos paramètres du Centre de gestion de la confidentialité pour vous assurer que la macro fonctionne correctement.

Pour ce faire, ouvrez la feuille de calcul et accédez à Fichier > Les options > Centre de confiance.

De là, cliquez Paramètres du centre de confiance, et sur l'écran suivant, réglez le cadran de la radio sur Ne jamais afficher d'informations sur le contenu bloqué.

Faites travailler Microsoft Excel pour vous

Microsoft Excel est un outil incroyablement puissant, mais apprendre à en tirer le meilleur parti peut être un peu intimidant. Si vous voulez vraiment maîtriser le logiciel, vous devez être à l'aise avec VBA, et ce n'est pas une mince tâche.

Cependant, les résultats parlent d'eux-mêmes. Avec une petite expérience de VBA à votre actif, vous serez bientôt en mesure de faire exécuter automatiquement par Microsoft Excel des tâches de base, ce qui vous laissera plus de temps pour vous concentrer sur des tâches plus urgentes..

Il faut du temps pour développer une expertise avec VBA, mais vous verrez bientôt les fruits de votre travail si vous pouvez vous en tenir à cela..

Un excellent endroit pour commencer est notre didacticiel faisant autorité sur l'utilisation de VBA dans Excel. Didacticiel pour débutant sur l'écriture de macros VBA dans Excel (et pourquoi vous devriez apprendre) Didacticiel pour débutant sur l'écriture de macros VBA dans Excel (et pourquoi vous devriez apprendre) Si vous utilisez Excel régulièrement, il est utile d’apprendre à créer des macros VBA et à accéder à de nombreuses autres fonctions et capacités. . Une fois que vous avez terminé, ce simple script pour envoyer des courriels à partir d'Excel sera un jeu d'enfant..




aligner_ruma ([email protected])
28.03.24 09:00
Приветствую, вы знали про аппарат от дистопированных зубов <a href=aligner-price.ru>aligner-price.ru</a> .
Davidescam ([email protected])
21.03.24 10:58
anchor <a href=https://galaxyswapperv2.org/>fortnite eminem skin</a>
월클카지노 주소 ([email protected])
13.03.24 21:05
중계가 유료화되면서 습관적으로 보던 해외 프로스포츠 경기 월클카지노 주소 시청을 끊었다는 시민들도 있었다. “무료화 때문에 주중 일은 아침까지 잠안자고 낮에 잠자던 습관을 고쳤다”거나 “중계가 무료로 바뀌어 덜보게 되고 호기심도 점점 떨어진다”는 등의 목소리도 나왔다. <a href=https://xn--o80b181be8bu3gezc.net/>월클평생도메인</a>
Louissterm ([email protected])
04.02.24 11:54
Мы предлагаем возможность приобрести диплом в нашем интернет-магазине http://e-diplom.biz по доступной цене с доставкой по всей территории России. У нас в ассортименте представлены дипломы всех университетов Москвы, независимо от года выпуска и специальности.
MichaelMex ([email protected])
01.02.24 22:29
Недорого предлагаем на сайте http://dodip.ru заказать диплом <a href=http://dodip.ru>http://dodip.ru</a> без предоплаты с доставкой курьером по РФ.
De la technologie moderne, simple et abordable.
Votre guide dans le monde de la technologie moderne. Apprenez à utiliser les technologies et les gadgets qui nous entourent chaque jour et à découvrir des choses intéressantes sur Internet.