Alerte depuis Excel via mail (Yahoo) ou autre

mwasikitoko

XLDnaute Nouveau
Bonjour tous,

J'ai un peu fouillé partout, vu et lu de nombreux codes se rapprochant de ce que je veux
mais pas tout à fait trouvé mon bonheur, simplement parce que je n'ai pas tout compris :confused: ;)
Faut dire qu'adapter des codes VBA lorsqu'on comprend pas le principe, c'est pas évident.
Aussi j'ai préféré posé THE problème pour essayer de comprendre la solution à THE problème.
Mon souci.
Je crée un tableau Excel permettant de gérer des demandes d'autorisation qu'on accorde ou pas.
Les demandes sont donc enregistrées dans le fichier Excel, dont certaines colonnes sont

Col B : Demandeur
Col C : Date Reception
Col D : Date limite Accusé Réception (C + 7 J)
Col E : Date limite Etablissement autorisation (C + 30 J)
Col F : Date limite pour mise à signature (E + 7 J)
Fichier Test

J'aimerais recevoir dans ma Bal Yahoo des alertes pour chacune des dates limites (D, E, F) m'indiquant qu'il me reste respectivement 3 jours, 15 jours et 3 j pour accuser réception, établir l'autorisation et la mettre à signature.
En lisant ça et là, je suis arrivée à ajouter la référence CDO mais le reste est un peu confus.
J'aimerais bien comprendre les étapes du code VBA à utiliser pour l'adapter le cas échéant à mon cas.
Dans l'attente de réponse, je vous remercie d'avance pour votre aide.
Mwasikitoko
 

Pièces jointes

  • Test_EnvoiMail.xlsx
    11.1 KB · Affichages: 42
Dernière édition:

mwasikitoko

XLDnaute Nouveau
Re : Alerte depuis Excel via mail (Yahoo) ou autre

Bonsoir OTW,
contente de voir que la discussion que j'ai généré t'interpelle.
est-il possible d'avoir la même chose, avec Outlook, mais d'envoyer le mail à un destinataire différent, celui de la colonne"A" par exemple, en rajoutant une colonne mail
Sans trop m'y connaître, je dirais oui !!!
J'ai vu ça et là sur des forums des sujets résolus et répondant à ta question.
Je te conseille de lire avec attention le code que m'a envoyé NezQuiCoule (encore merci !!).
Il est bien documenté, c'est à dire commentaire explicite et pédagogique.
Tu pourras aisément t'en inspirer
et me faire un retour...
Bon courage dans cette aventure
Mwasikitoko
Aïe j'avais pas vu la réponse de NezQuiCoule ...
C'est donc possible
 
Dernière édition:

Yaloo

XLDnaute Barbatruc
Re : Alerte depuis Excel via mail (Yahoo) ou autre

Bonsoir à tous,

Pour lancer un fichier par VBS, il suffit d'ouvrir un fichier txt et y coller par exemple (source):
Set sh = CreateObject("WScript.Shell")
sh.Run("c:\zaza.doc")
Set sh=Nothing
Bien sur, changer le chemin et le nom fichier.
Ensuite, enregistrer le fichier puis changer son extension en remplaçant .txt par .vbs.
Pour l'ouvrir à chaque démarrage du PC le mettre dans le répertoire prévu à cet effet.

Bonne soirée

Martial
 

Herdet

Nous a quitté
Repose en paix
Re : Alerte depuis Excel via mail (Yahoo) ou autre

Bonsoir Staple NezQuiCoule, mwasikitoko
Les envois de mail par CDO fonctionnent bien avec Windows en 32 bits mais malheureusement ne fonctionnent plus avec Windows en 64 bits
C'est pas faute d'avoir cherché plusieurs heures des infos sur MAPI, CDO.DLL, CDO 1.2.1 etc... sur des sites FR et AN pour pallier ce problème.

Staple, si tu as une solution ou une piste (simple) pour contourner ce problème de CDO en 64 bits, je suis preneur à 100%

Salutations
Robert
 

Yaloo

XLDnaute Barbatruc
Re : Alerte depuis Excel via mail (Yahoo) ou autre

Bonsoir Herdet,

Moi aussi j'ai Windows en 64 bits et CDO fonctionne chez moi, avec free et non Yahoo.
Peux-tu essayer la macro ci-dessous ? En modifiant les adresses mail et les mot de passe.
VB:
Sub Envoi()
Dim iMsg As Object
Dim iConf As Object
Dim Flds As Variant

Set iMsg = CreateObject("CDO.Message")
Set iConf = CreateObject("CDO.Configuration")

'Suivant le PC et le FAI les lignes peuvent être utilisées, bien mettre le bon FAI
iConf.Load -1    ' CDO Source Defaults
Set Flds = iConf.Fields
With Flds
  .Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
  .Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
  .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.mail.yahoo.com"
  .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465
  .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
  .Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "ton.adresse@yahoo.com"
  .Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "ton mot de passe"
  .Update
End With
With iMsg
    Set .Configuration = iConf
    .To = "ton.adresse@yahoo.com"   'A"
    .From = "ton.adresse@yahoo.com" 'De
    '.CC = ComboBox3          'CC si besoin
    .Subject = "ton objet"    'Objet
    .textbody = "ton texte"   'Corps de texte
    '.AddAttachment "chemin + fichier" 'si besoin
    .Send                     'Envoi le message
End With
End Sub
C'est juste pour voir si le mail est bien reçu avec Yahoo.

A+

Martial
 

Herdet

Nous a quitté
Repose en paix
Re : Alerte depuis Excel via mail (Yahoo) ou autre

Bonsoir Herdet,
Moi aussi j'ai Windows en 64 bits et CDO fonctionne chez moi, avec free et non Yahoo.
Peux-tu essayer la macro ci-dessous ? En modifiant les adresses mail et les mot de passe.
C'est juste pour voir si le mail est bien reçu avec Yahoo.
A+

Martial
Bonjour Martial,

Avec Win 7 64 bits, Excel 2010 et Outlook, cela ne pose pas trop de problème mais c'est un peu plus compliqué sans Outlook.
Je développe une application qui inclus entre autre des créations d'email (avec envoi manuel par sécurité).
Les utilisateurs sont équipés de FAI variables Free, Google, Numericable (et autres ?) et messageries Gmail, Yahoo, Outlook, ...

Le code plante sur Set Flds = iConf.Fields Erreur d'éxécution 48 chargement de la DLL
Il y a un problème de configuration et de DLL

Idem avec les codes similaires adaptés de ceux de Ron de Bruin
Code:
Function GetSMTPServerConfig() As Object

Dim Cdo_Config As New CDO.Configuration
Dim Cdo_Fields As Object

Set Cdo_Fields = Cdo_Config.Fields
With Cdo_Fields
.Item(cdoSendUsingMethod) = cdoSendUsingPort
.Item(cdoSMTPServer) = "smtp.gmail.com"
.Item(cdoSMTPServerPort) = 465
.Item(cdoSendUserName) = "identifiant"             ' source : identifiant
.Item(cdoSendPassword) = "mot de passe"      ' source : mot de passe 
.Item(cdoSMTPAuthenticate) = cdoBasic
.Item(cdoSMTPUseSSL) = True
.Update
End With

Set GetSMTPServerConfig = Cdo_Config
Set Cdo_Config = Nothing
Set Cdo_Fields = Nothing
End Function

A suivre...
Robert
 

NezQuiCoule

XLDnaute Occasionnel
Re : Alerte depuis Excel via mail (Yahoo) ou autre

Bonjour à tous,

L'intérêt de ne pas utiliser Outlook dans ce sujet, c'est de pouvoir envoyer les mails directement sans devoir les valider un à un.
Outlook n'autorise pas l'envoi automatique de mails, l'utilisateur doit cliquer lui-même sur envoyer.

En revanche ce qui serait excellent, c'est de pouvoir récupérer les paramètres SMTP (Serveur/IP et port) d'un maximum de FAI afin d'établir un code adaptable et facile à utiliser.

Dans ce sujet en particulier, c'est Yahoo qui nous intéresse. Tant que mwasikitoko ne nous répond pas on ne peut pas poursuivre son projet, il faut donc qu'on obtienne son résultat du test avec CDO.
Pour la suite, ce sera facile grâce à tout ce que les intervenants ont déjà apporté :)
 

Staple1600

XLDnaute Barbatruc
Re : Alerte depuis Excel via mail (Yahoo) ou autre

Bonsoir à tous

Bonsoir Staple NezQuiCoule, mwasikitoko
Staple, si tu as une solution ou une piste (simple) pour contourner ce problème de CDO en 64 bits, je suis preneur à 100%
Salutations
Robert
Une piste toute fraiche (non testée)
Fix CDO Error

NB: En cas de pépin, je décline toute responsabilité ;)

Autre piste possible ?
(je vous laisse tenter l'aventure et tester avec CDO)
Ce lien n'existe plus
 

Yaloo

XLDnaute Barbatruc
Re : Alerte depuis Excel via mail (Yahoo) ou autre

Bonjour Staple :)

Ton premier me renvoie bien à une erreur ....

Capture.JPG


:eek: :eek: :eek:
 

Pièces jointes

  • Capture.JPG
    Capture.JPG
    13.6 KB · Affichages: 34
  • Capture.JPG
    Capture.JPG
    13.6 KB · Affichages: 31

Discussions similaires

Réponses
0
Affichages
680

Statistiques des forums

Discussions
312 579
Messages
2 089 900
Membres
104 300
dernier inscrit
katlynefortin