Bonjour a tous et a toutes .....
Voila je souhaite envoyer un e-mail depuis ma feuille excel grace a la macro suivante :
Sub EnvoiMail(semaine)
Dim nouveau_mail As New Outlook.Application
Dim objet_mail As MailItem
Set nouveau_mail = New Outlook.Application
Set objet_mail = nouveau_mail.CreateItem(olMailItem)
With objet_mail
.To = "jean-marc@voila.fr"
.Subject = ("Pointage de la semaine" & semaine)
.Attachments.Add ("C:\Aaa jmarc\Pointage S" & semaine & ".xls")
'.Display
.Body = "bonjour"
.Send
End With
End Sub
Bon ca marche bien , mais a l'ouverture de outlook, un mot de passe est necessaire ( pas possible de passer outre car cette appli fonctionne a mon boulot et le mot de passe est obligatoire) : voir le pop up en piece jointe ( fichier jpg)...
Existe t il une instruction pour remplir le champ "mot de passe " puis le valider ???? tout cela automatiquement ....
Salut ,
j'espère pour toi qu'il y a une solus plus simple car la seul que j'ai a te proposer est loin de l'être
moi le seul moyen que je connai c les fonction SDK
la fonction FindWindow pour trouver la fenêtre
la fonction FindWindowEx pour trouver la zone de saisie
la fonction PostMessage pour saisir dedans
encore la fonction FindWindowEx pour trouver le bouton valider
et encore la fonction PostMessage pour clicker dessus
donc tout ça dans une fonction et il faut que tu creé un Thread qui lance cette fonction avant que tu envoi le mail vu que une fois la fênetre ouverte t'u n'as plus la main dessus. Donc avec la fonction CreateThread et un petit TerminateThread pour finir
voila c tout LOL enfin j'ai l'ai déja fais donc ça marche mais bon faut s'y connaitre un minimum en prog je l'admet ^^.
les fonction SDK sont les fonctions qui sont fournit avec windows et qui permettent de faire pas mal de chose au plus bas niveau.
tu trouvera de l'aide pour chacune d'elle dans l'msdn ( aide microsoft ) comme par ex Ce lien n'existe plus pour la fonction FindWindow.
Le problème est que si tu n'y connai rien en prog c loin d'être gagner....car par exemple pour la fonction findwindow, il faut que tu lui passe en paramètre la classe de la fenêtre rechercher et son nom et pour trouver ça il te faut un logiciel.....trouvable surement gratuitement mais qui demande quand même un minimum de connaissance
je ne pense pas que l'on puisse utiliser la fonction "Sendkey" ( enfin je me trompe peut être et ça coute rien de tester ) car dans la cas présent, c'est sur une fenêtre de outlook qu'il faut intervenir et non sur une fenêtre d'excel donc tu n'as pas la main dessus.
aide de Sendkey : Cette méthode envoie des touches à l'application active. et dans le cas présent c excel l'appli active.
mais bon j'ai pas tester donc j'en suis pas sur
je me trompe p-ê mais si tu as ta fenêtre de demande de mot de passe afficher, ça veut dire qu'elle à le focus donc elle est active, au pire tu ajoute un <AppActivate "Nom de la fenêtre">
mais bon j'avoue que ça fais longtemps et pas mal de fenêtre sont passé sous les ponts..
alors messieurs et bien j'ai testé le probleme avec sendkeys et ....et .....
ca fonctionne parfaitement bien !!!!
avec : SendKeys("mot de passe{ENTER}")
C'est du caviar tout ca ,
merci a vous deux pour avoir bien fait avancer le schmilblick ......