VBA enregistrer et envoyer classeur en cours par mail

Bonjour à tous,

J'ai appris les bases de VBA sur votre site, super !

Seulement voilà j'ai un soucis sur l'envoi du classeur rempli grâce à mon userform.

J'explique :

J'ai créé une suite de userforms qui servent d'interface au remplissage d'un formulaire dans le genre nom prénom etc...

Seulement sur le dernier userform j'aimerais que lorsque je clique sur le bouton "envoyer le formulaire" que j'ai créé, cela propose d'enregistrer le document et crée simplement un mail (sans object, sans adresse pré-remplie etc) mais avec en pièce jointe le formulaire rempli précedemment.

Pour des raisons professionnelles je ne peux vous joindre mon fichier. En espèrant avoir été assez clair dans mes explications.

Merci d'avance !

Bonjour,

J'ai un code qui fonctionne avec un bouton macro mais je n'ai jamais testé dans un userform.

Dans mon exemple, je renomme le classeur envoyé suivant les valeurs des cellules M30 et M31.

Il fait une copie de la feuille avant envoi.

A tester, code à "coller" dans le bouton envoi par mail du userform

Sub message()

Dim chemin As String
Dim Obj As OLEObject, X As Integer
Dim sh As Shape

 A = Range("M30").Value
 B = Range("m31").Value

 ActiveSheet.Copy

 Name = A & " " & B

 ActiveWorkbook.SaveAs Name

 ActiveWorkbook.SendMail Recipients:=Range("a1").Value

    Application.DisplayAlerts = False

' Ferme le classeur créé après l'envoi
 ActiveWorkbook.Close

 Application.DisplayAlerts = True

End Sub

Super merci !

Tu as très bien répondu à ma demande avec un code simple.

J'ai eu un bug en laissant ces codes mais en les enlevant tout fonctionne comme je le souhaite quand même.

"A = Range("M30").Value

ActiveWorkbook.SaveAs Name"

Merci encore !

ok! tu peux clore le post! merci

Rechercher des sujets similaires à "vba enregistrer envoyer classeur cours mail"