Bouton Macro pour envoi mail de formulaire une fois rempli

virtuelle13

XLDnaute Nouveau
Bonjour à tous,

Je profite de ce message pour vous souhaiter une excellente Année 2010.
Que celle-ci vous soit clémente et voit la réussite des projets qui vous tiennent à cœur.

Pour en venir à mon problème :

j'ai crée un formulaire à télécharger sur mon site, puis à compléter.
je souhaite créer une macro pour qu'une fois ce formulaire rempli, on clique sur un bouton macro et celui-ci me soit transmis directement par mail.
Peu importe qu'il soit sous la forme d'un classeur ou d'une feuille.

je remercie par avance tous ceux qui essaieront de m'aider. :)

bonne soirée
 

JNP

XLDnaute Barbatruc
Re : Bouton Macro pour envoi mail de formulaire une fois rempli

Bonjour Virtuelle13 :),
Tu trouveras plein de fil sur la question des envois par mail sur le forum, mais... tu vas tomber sur plein de cas de figure en fonction de la configuration de celui qui va télécharger ton fichier (OS, version Office, type de messagerie, blocages anti-spam...) :eek:...
Pourquoi ne pas programmer ton formulaire directement sur le site ?
Ou alors, utilises un formulaire Acrobat...
Bon courage :cool:
 

virtuelle13

XLDnaute Nouveau
Re : Bouton Macro pour envoi mail de formulaire une fois rempli

Bonjour JNP et merci pour ta réponse.
J'ai effectivement parcouru tout le forum ou presque en filtrant les sujets sur Macro.... oui il y en a pas mal, mais je n'ai pas trouvé exactement ce que je souhaite.
J'ai donc pris plusieurs codes et depuis hier j'essaie de les combiner mais n'y comprenant pas grand chose en macro complexe... je me prend la tête, mais je pense tenir le bon bout.

voici le contenu de ma macro, qui coince ... peut être pourras tu me dire où :eek:

Sub EnvoiMail()
Application.DisplayAlerts = False
Workbook.SendMail Recipients:="taratata@turliponpon", _
Subject:="Formulaire diagnostic en ligne", _
ReturnReceipt:=True
End Sub

Merci d'avance et bon dimanche :)
 

virtuelle13

XLDnaute Nouveau
Re : Bouton Macro pour envoi mail de formulaire une fois rempli

Wahouuuuuu !!!! :eek: ç 'est super. ça marche. Trop fort !

Je t'envoie des tonnes de bisous si je peux me le permettre. :p
Je suis trop contente :D et tellement honteuse :eek: aussi d'avoir passé tant d'heures à chercher alors qu'au final c'était tout bête.
Quoiqu'il fallait aussi le savoir...

Mille "MERCI" JNP et je te souhaite une merveilleuse année 2010 ainsi qu'à tous toutes tes brutes d'élèves ;)
 

JNP

XLDnaute Barbatruc
Re : Bouton Macro pour envoi mail de formulaire une fois rempli

Re :),
Je t'envoie des tonnes de bisous si je peux me le permettre. :p
C'est bon, je le dirai pas à ma femme :p...
Mais avant de le mettre en ligne, fait le tester par des collègues sous différents environnements (Mac, XP, Vista, Seven) et versions (2000, 2003, 2007), ça t'évitera des surprises ;).
A la limite, poste-le sur un fil en demandant un test des gens du forum avec retour suivant leur config :rolleyes:.
Bon courage :cool:
 

virtuelle13

XLDnaute Nouveau
Re : Bouton Macro pour envoi mail de formulaire une fois rempli

Mais tu peux le dire à ta femme. Ce ne sont que des bisous de joie :D et sur la joue ....;):eek:

Ok, je vais le faire tester. Mais travaillant sur Excel 2007, lors de l'enregistrement, je l'ai fait en mode compatibilité avec versions antérieures. cela ne suffit pas ? Un ami vient de le tester sur 2003 et ça fonctionne en tout cas. Je vais quand même faire le tour de mes connaissances.

Re bisous :) et Re Merci
 

JNP

XLDnaute Barbatruc
Re : Bouton Macro pour envoi mail de formulaire une fois rempli

Re :),
Mais travaillant sur Excel 2007, lors de l'enregistrement, je l'ai fait en mode compatibilité avec versions antérieures. cela ne suffit pas ?
Le mode compatibilité ne joue que sur le côté tableur, pas sur les macros... Ainsi, si tu enregistres un tri avec l'enregistreur de macro sous 2007, il ne fonctionnera pas sous 2003 (même en mode de compatibilité...).
Comme tu utilises SendMail, ça pose moins de problème que si tu passais par OutLook où tu as besoin d'ouvrir la référence (qui n'est pas la même en fonction de la version d'Office...), mais les tests sont toujours nécessaires quand tu ne sais pas sur quel poste tes macros vont tourner (et je connais des gens qui sont encore en 97 au boulot...).
Bon dimanche :cool:
 

virtuelle13

XLDnaute Nouveau
Re : Bouton Macro pour envoi mail de formulaire une fois rempli

D'accord. Encore merci pour tes lumières. Je vais embêter tout mon entourage de ce pas... un dimanche... ils vont être heureux de m'avoir connu.
Bon dimanche à toi aussi et peut être à bientôt si je rencontre un soucis auquel je ne trouve pas de réponse sur le forum :)
 

Djdbl

XLDnaute Nouveau
Re : Bouton Macro pour envoi mail de formulaire une fois rempli

Bonjour

j'utilise cette macro et je voudrais savoir s'il y a moyen de la modifier de telle façon que la macro vienne chercher une adresse mail se trouvant dans une cellule précise du classeur en question.

Merci beaucoup
 

JNP

XLDnaute Barbatruc
Re : Bouton Macro pour envoi mail de formulaire une fois rempli

Bonsoir Djdbl et bienvenue :),
Dans la macro
Code:
Sub EnvoiMail()
Application.DisplayAlerts = False
ThisWorkbook.SendMail Recipients:=[COLOR=red][B]"taratata@turliponpon"[/B][/COLOR], _
Subject:="Formulaire diagnostic en ligne", _
ReturnReceipt:=True
End Sub
l'adresse d'envoi est en rouge. Donc en admettant que ta cellule soit "A1" de la feuille "Feuil1"
Code:
Sub EnvoiMail()
Application.DisplayAlerts = False
ThisWorkbook.SendMail Recipients:=[COLOR=red][B]Sheets("feuil1").Range("A1").Value[/B][/COLOR], _
Subject:="Formulaire diagnostic en ligne", _
ReturnReceipt:=True
End Sub
devrais fonctionner.
Bonne soirée :cool:
 

Djdbl

XLDnaute Nouveau
Re : Bouton Macro pour envoi mail de formulaire une fois rempli

Bonjour à tous

j'aurai encore uen petite question. Lors de l'envoi du mail on a bien un sujet qui est ajouté via la ligne

Code:
Subject:="Formulaire diagnostic en ligne", _

Peut-on ajouter aussi juste un petit message dans le corps du mail (par exemple "Bonjour") ?

Merci par avance
 

JNP

XLDnaute Barbatruc
Re : Bouton Macro pour envoi mail de formulaire une fois rempli

Re :),
D'après l'aide, SendMail ne reconnait que 3 propriétés : Destinataire, Objet et Accusé de réception...
Pour mettre un corps de message, il va falloir passer par d'autre macros, comme par OutLook :
Code:
    Dim OlApp As Outlook.Application
    Dim OlItem As Outlook.MailItem
    Set OlApp = CreateObject("Outlook.application")
    Set OlItem = OlApp.CreateItem(olMailItem)
    With OlItem
        .To = "[EMAIL="xxxxxxx@xxxxx.xx"]xxxxxxx@xxxxx.xx[/EMAIL]"
        .CC = "[EMAIL="xxxxx.xxxx@xxxxxxx.xxx"]xxxxx.xxxx@xxxxxxx.xxx[/EMAIL]"
        .Subject = "Test"
        .BodyFormat = olFormatHTML
        .HTMLBody = "<HTML><body>Ce <b>mot</b> est en gras.<p>" _
        & "Ce " & "<u>mot</u> est souligné.<p>" & "Ce " _
        & "<FONT COLOR=RED>mot</FONT> est en rouge.<p>" _
        & "Ce " & "<i>mot</i> est en italique.<p>" & _
        "<b><i><u><font color=green>Ce format est vert, gras, italique et souligné !</font></u></i></b></body><HTML>"
        .Display 'Ou .Send
    End With
Là, c'est un exemple avec de la présentation HTML, mais si tu remplaces .BodyFormat et .HTMLBody par .Body = "Bonjour", cela fera du texte brut.
.Display ouvre le message sur OutLook sans l'envoyer, .Send l'enverra (n'utiliser qu'un seul des 2 arguments) mais tu auras un petit message de sécurité d'OutLook qui te demandera confirmation de l'envoi (contre les virus spammeurs...).
Bon courage :cool:
 

Discussions similaires

Statistiques des forums

Discussions
312 330
Messages
2 087 351
Membres
103 526
dernier inscrit
HEC