Envoi e-mail Outlook 2013 depuis un fichier Excel avec macros

Fermé
Niconz Messages postés 310 Date d'inscription lundi 16 juin 2014 Statut Membre Dernière intervention 6 juillet 2020 - 24 août 2016 à 16:16
Niconz Messages postés 310 Date d'inscription lundi 16 juin 2014 Statut Membre Dernière intervention 6 juillet 2020 - 11 sept. 2017 à 15:13
Bonjour,

Bonjour à tous, 

Je me permets de faire appel à votre aide pour une problématique entre Excel et Outlook.

Je suis en train de mettre en place une base de données, via un fichier Excel avec des macros, qui permettra à ma société de recenser et garder à jour tous les documents juridiques importants.

L'une des fonctionnalités que j'aimerais intégrer est l'envoi d'un e-mail lorsqu'un de ces documents (un contrat par exemple) arrive à échéance.
A titre d'exemple, 3 mois avant la date de fin de contrat, j'aimerais qu'un e-mail soit envoyé à la personne référente lui indiquant que son contrat arrive bientôt à échéance.

Voici la base de données qui a été créé :
https://mon-partage.fr/f/ypPCjHp6/

Mot de passe : OUTLOOK

Identifiant
Last name : A
First Name : Nic
Password : G19PK1


Concrètement, voici ce que j'aimerais :

Conditions à respecter pour cette fonctionnalité :
1. La personne étant sur le fichier appartient au département Purchasing (ce sera vérifié via l'UF identification)
2. La date rentrée dans le champ "1st notification" de l'UF ADDITION_DOC sera celle du jour ou aura été dépassé.
3. La date rentrée dans le champ "2nd notification" de l'UF ADDITION_DOC sera celle du jour ou aura été dépassé.


A l'ouverture du fichier, et une fois que les 2 conditions ci-dessus seront remplies (soit la 1 et la 2 , ou la 1 et la 3), une notification apparaîtra sur l'onglet "Home" indiquant que X nombre de documents arrivent à échéance, et qu'un rappel par e-mail doit être envoyé aux personnes concernées.

Le texte pour cette notification pourrait être le suivant :
Titre de l'UF : notification
Texte : "X documents will expire shortly. Please advise the concerned people by clicking on "OK"".
(X étant la somme de documents arrivant à échéance)

Quand la personne cliquera sur le bouton "OK", un e-mail s'ouvrira dans Outlook pour chaque document bientôt expiré.

Le texte de l'e-mail pouvant être le suivant :

¦
To : "E-mail document owner"
Cc : "E-mail purchasing document owner"
Objet : 1st Notification : "Nom du fournisseur - Description du contrat" will expire by "ending date"
Texte de l'e-mail :
      • E-mail generated automatically : please do not answer to this e-mail.***


Dear "document owner",

As a reminder, please be aware that the "type of legal document" with "supplier name" will expire by "ending date".
Please take the necessary actions, if required.

Should you need further information on this "type of legal document" with "supplier name", please consult the file ABC at the following adress :

Thanks.
¦

Les informations ci-dessus entre "" se retrouvent dans les différents onglets de mon fichier.

N.B pour le texte ci-dessus : pouvez appliquer la mise en forme tel que mise ci-dessus svp.

Voilà pour les explications, j'espère ne rien avoir oublié…

L'un d'entre vous serait-il comment faire ?

D'avance, un grand merci pour votre aide.
Excellente journée,

N:B : Pour info, j'utilise Microsoft Office 2013.
Dans la mesure du possible, merci de ne pas modifier les macros existantes, car cela fait des mois qu'on travaille dessus, et ca semble enfin marcher parfaitement.

A voir également:

63 réponses

Niconz Messages postés 310 Date d'inscription lundi 16 juin 2014 Statut Membre Dernière intervention 6 juillet 2020
16 sept. 2016 à 10:51
Bonjour Thev, 

Pour faire suite à mon post précédent, je pense avoir enfin résolu mes coquilles :), et aurai besoin de votre aide pour réintégrer vos fonctionnalités Outlook…

D'ailleurs, je me suis aperçu qu'il manquait une fonctionnalité Outlook, que je vous détaillerai plus tard.

Toujours ok pour vous ?

Je devrai pouvoir vous envoyer ca d'ici début de semaine au plus tard, voire peut-être même cet après-midi.

Merci beaucoup :)
1
thev Messages postés 1852 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 23 avril 2024 681
25 août 2016 à 01:35
Bonsoir,

ci-jointe une première proposition.
modifications :
1- ajouts dans code relatif à l'Userform IDENTIFICATION
2- ajout d'un module de classe pour événements personnalisés
3- ajout d'un module envoi mail via Outlook
4- ajout de noms relatifs aux colonnes de la feuille "Legal docs listing"


https://www.cjoint.com/c/FHyxDgPlsBd
0
Niconz Messages postés 310 Date d'inscription lundi 16 juin 2014 Statut Membre Dernière intervention 6 juillet 2020
25 août 2016 à 09:16
Bonjour Thev,

Merci beaucoup pour ta proposition, c'est impressionnant.
D'ailleurs, je ne savais pas qu'on avait pas besoin de passer par Outlook pour que le mail soit envoyé.

J'ai noté quelques petites améliorations à apporter :

1. La demande d'envoi d'e-mail se fait même si la personne n'appartient pas au département "Purchasing". Il faudrait que seuls les personnes appartenant à ce département soient en droit d'envoyer cet e-mail.
2. Les mails ne sont pas envoyés en cc au "Purchasing document supervisor"
3. Quand une seule et même personne est responsable de plusieurs documents arrivant à échéance prochaine, un seul e-mail est envoyé, tel que ci-dessous.
Il faudrait que ce soit un mail par document, et ce même si c'est la même personne à chaque fois.
4. Le fichier n'enregistre plus automatiquement les documents renseignés via le bouton Addition. Est-ce normal ?
5. Une fois que les mails de notification ont été envoyés, il ne faut pas que le message de notification ré-apparaisse
6. Pas d'envoi d'e-mails pour les 2nd notifications

D'avance, un grand merci pour ton aide,
Excellente journée,
0
Niconz Messages postés 310 Date d'inscription lundi 16 juin 2014 Statut Membre Dernière intervention 6 juillet 2020
25 août 2016 à 09:20
Et voici la capture d'écran pour le point 3.
Merci.

0

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

Posez votre question
thev Messages postés 1852 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 23 avril 2024 681
25 août 2016 à 10:12
Bonjour,

Pour ce qui concerne l'envoi d'un mail, la solution Outlook est la plus simple puisqu'incluse dans Office. Il existe d'autres solutions en particulier avec CDO mais qui demande la configuration du serveur de messagerie et une installation supplémentaire.

Les points 1 et 2 sont notés.
Pour le point 3, donc la même personne recevra en même temps plusieurs emails dès lors que les documents sont différents.
Pour le point 4, à vous de regarder car je ne suis pas intervenu dans le code concerné
Pour le point 5, pouvez préciser les noms de la feuille et de la colonne à renseigner lorsque le mail de notification a été envoyé.
Pour le point 6, je vais vérifier car cela aurait du fonctionner.


Je vous fais un retour d'ici demain car je serai absent une partie de la journée.

 
0
Niconz Messages postés 310 Date d'inscription lundi 16 juin 2014 Statut Membre Dernière intervention 6 juillet 2020
25 août 2016 à 11:21
Salut Thev,

Merci pour ton retour rapide.
Ci-dessous mes réponses à tes questions :
3. Oui, la même personne recevra en même temps plusieurs emails dès lors que les documents sont différents. 
4. OK, je vérifie le code
5. Feuille "legal docs listing", à partir de la colonne AY


Enfin, dans le message de l'e-mail, pouvez-vous veiller à garder la mise en forme tel que donnée dans mon 1er post
" Should you need further information on this "type of legal document" with "supplier name", please consult the file ABC at the following adress" : 

D'avance, merci beaucoup,
Excellente journée,
0
thev Messages postés 1852 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 23 avril 2024 681
25 août 2016 à 11:34
Bonjour,

Réponses notées.

Pour la mise en forme, souligné et gras ne posent pas de problème car les simples balises HTML seront suffisantes.
Pour une mise en forme plus élaborée, un modèle Word serait nécessaire.  
0
thev Messages postés 1852 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 23 avril 2024 681
25 août 2016 à 23:21
Bonsoir,

ci-joint 2ème proposition

https://www.cjoint.com/c/FHzvrnsBOCm


J'ai au final résolu la non reconduction des notifications en ajoutant un commentaire sur les dates des rappels effectués
0
Niconz Messages postés 310 Date d'inscription lundi 16 juin 2014 Statut Membre Dernière intervention 6 juillet 2020
26 août 2016 à 13:46
Bonjour Thev,

Merci beaucoup, tout a l'air de marcher parfaitement.
Je continue de faire des tests dans tous les sens, et vous reviens si jamais je constate des bugs.

Excellent weekend,
0
thev Messages postés 1852 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 23 avril 2024 681
26 août 2016 à 14:25
Parfait.

ci-dessous nouvelle version avec modif mineure simplifiant le code

https://www.cjoint.com/c/FHAmxgloQjg
0
Niconz Messages postés 310 Date d'inscription lundi 16 juin 2014 Statut Membre Dernière intervention 6 juillet 2020
5 sept. 2016 à 12:10
Bonjour Thev,

Encore merci pour votre input.
J'ai découvert quelques coquilles dans mon fichier, que j'essaye désesperement de corriger.

Pour des raisons que j'ignore, j'ai du prendre les versions antérieurs aux fonctionnalités Outlook, car votre version me faisait des bugs à l'ouverture.

Tout ca pour dire qu'une fois que j'aurai corrigé ces bugs, j'aurai très certainement besoin de vous pour ré-intégrer ces fonctionnalités Outlook dans mon fichier... :), en epsérant que ca vous dérange pas.

Merci beaucoup pour votre aide continue !

Très bonne journée,
0
thev Messages postés 1852 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 23 avril 2024 681
5 sept. 2016 à 12:24
Bonjour,

Pas de souci. Pour info, ma version correspond à office 2013 64 bits.
0
thev Messages postés 1852 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 23 avril 2024 681
16 sept. 2016 à 12:44
OK. c'est noté.
0
Niconz Messages postés 310 Date d'inscription lundi 16 juin 2014 Statut Membre Dernière intervention 6 juillet 2020
19 sept. 2016 à 09:59
Bonjour Thev,

Comme promis, ci-joint le fichier dans sa version finale.

https://www.cjoint.com/c/FIqo7x7SoTf

Pourriez-vous svp y intégrer vos fonctionnalités, a l'identique de nos derniers échanges ? (post numero 9)

Enfin, pourrais-je vous demander d'y ajouter la fonctionnalité suivante :

Lorsqu'un un nouvel utilisateur crée son compte (UF NEW_IDENTIFICATION), un pop-up s'affiche pour lui donner son mdp.
J'aimerais que ce mot de passe lui soit envoyé par e-mail, et ce même si c'est de sa propre boite mail.
L'important est qu'il est une trace écrite de son mdp pour ce fichier.

Le texte de l'e-mail pouvant être le suivant :


To : "your e-mail"
Objet : "Your password for X"
Texte de l'e-mail :
      • E-mail generated automatically : please do not answer to this e-mail.***


¦
Dear "first name" "last name",

Thank you for your registration and welcome to the X
Please find below your login details :

Last name : "Last name"
First name : "First name"
Password : "password"


Thanks.
¦

Les informations ci-dessus entre "" se retrouvent dans l'onglet "Data base entreprise".

N.B pour le texte ci-dessus : pouvez-vous svp veiller à appliquer la mise en forme tel que mise ci-dessus.

N’hésitez pas si jamais j'ai loupé quelque chose.

Un grand merci, très bonne journée,
0
thev Messages postés 1852 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 23 avril 2024 681
19 sept. 2016 à 18:07
Bonsoir,

ci-jointe nouvelle version
https://www.cjoint.com/c/FItqcgoSJsn

A noter que dans la feuille "Specs", vous avez dans les colonnes de dates de rappel, des valeurs qui ne sont pas reconnues en tant que date : lignes 5 et 6, ligne 18, ....
Je vous conseille d'établir un contrôle de saisie d'une date via la fonction "validation des données".
0
Niconz Messages postés 310 Date d'inscription lundi 16 juin 2014 Statut Membre Dernière intervention 6 juillet 2020
20 sept. 2016 à 09:55
Bonjour Thev,

Super, merci beaucoup, ça marche quasiment parfaitement.

J’ai juste noté 1 petit bug qui mériterait correction svp.

Lorsque plusieurs documents arrivent à expiration, et que les e-mails sont envoyés, le champ « document owner » qui est repris est le même dans tous les mails.
J’ai fait le test 2 fois pour 2 documents arrivant à expiration, et à chaque fois, le document owner qui s’affichait était le dernier des 2 docs qui arrivaient à expiration (dans l’ordre chronologique).

Concernant votre remarque, merci pour le rappel, mais les infos qui figurent dans cet onglet ne sont pour le moment que le résultat de mes tests précédents.
Lorsque je chargerai mon historique, je veillerai bien à ce que cette colonne soit configurée pour reconnaître les champs en date, en espérant que cela n’occasionne pas de bugs avec les macros.


Enfin, point très important, auriez-vous modifié les macros existantes avant votre intervention ? car les fonctionnalités qui se cachent derrière les boutons « Modify, Search & Reporting » ne marchent plus désormais… ce qui m’effraie un peu.

Je n’ai pas de message d’erreur, mais quand je tests ces boutons, il ne me trouve aucun docs correspondant aux champs remplis, alors qu’il y en a bien plusieurs…
Savez-vous à quoi cela est-il dû ?

D’avance, merci pour votre retour, ainsi que pour votre aide,

Excellente journée,
0
thev Messages postés 1852 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 23 avril 2024 681
Modifié par thev le 20/09/2016 à 13:18
Bonjour,

ci-jointe nouvelle version
https://www.cjoint.com/c/FIuliOMVBDv


1- bug « document owner »
En fait, c'était le champ « supplier name» qui était affiché dans le mail. Correction effectuée.

2-bug« Modify, Search & Reporting »
Je n'ai touché aucune macro existante mais simplement défini à tort une 2ème fois la variable "mondep" (Department) dans le code « Identification », ce qui impliquait que le contenu de cette variable n'était plus disponible pour les codes « Modify, Search & Reporting ». Correction effectuée.

 
0
Niconz Messages postés 310 Date d'inscription lundi 16 juin 2014 Statut Membre Dernière intervention 6 juillet 2020
20 sept. 2016 à 16:22
Re-bonjour Thev,

Merci pour votre retour et résolution rapide.

Je suis désolé de continuer à vous embeter avec ca, mais j’ai encore un bug avec le bouton reporting.

Selon mes tests (ca ne me le fait pas tout le temps, alors que j’effectue exactement le même test à chaque fois), j’ai le message d’erreur suivant :


Après avoir cliqué sur Debug, voici la ligne qui est jaunie…





Une idée ?

Mille merci pour votre aide en continue.
Très bonne soirée,
0
thev Messages postés 1852 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 23 avril 2024 681
20 sept. 2016 à 17:50
Bonsoir,

A mon avis, il suffit de déprotéger la feuille "Reporting" via le menu révision. Dans le code, je n'ai trouvé trace que de la protection du classeur et de la feuille "Legal docs listing"
0
Niconz Messages postés 310 Date d'inscription lundi 16 juin 2014 Statut Membre Dernière intervention 6 juillet 2020
21 sept. 2016 à 09:08
Bonjour Thev,

En effet, ca à l'air de suffire.
Pourquoi faire compliqué quand on peut faire simple.

Encore mille mercis pour votre aide,

Très bonne journée et continuation,
0