envoi d'une feuille par email

B

bradwen

Guest
bonjour quelq'un peut-il m'expliquer comment faire pour creer un bouton dans une feuille excel ou dans la barre de menu, capable d'envoyer par email la feuille active d'un classeur.

merci d'avance.
 
@

@+Thierry

Guest
Bonjour Bradwen et Pyrof et tous ceux/celles qui arriveront jusqu'à ce post ... (Difficultés en ce moment!)

Juste en complément de l'exemple de Pyrof, il faut faire une ligne de code de plus, si Bradwen ne veut envoyer que la feuille active de son classeur.

ActiveSheet.copy
ActiveWorkbook.SendMail ... etc

Par contre le classeur sera nommé avec un nom provisoire tel que "Book1" (ou "Classeur1" en FR)

Par conséquent, une méthode consiste à faire une sauvegarde pour nommer le fichier :
Sub MailPageActive
Dim Toto as String
Toto = "TestMail"

ActiveSheet.copy
ActiveWorkBook.SaveAs "C:\WinNT\Temp\" & Toto & ".xls"
ActiveWorkbook.SendMail ... etc

Toto peut être la valeur d'une cellule ou encore la date du jour etc... Perso jai utilisé cette méthose pour envoyer une seule feuille : (laissant le chois au User de nommer et choisir ou il veut sauver...

Sub SendMail()
Dim NewBook As Workbook
Dim fname As Variant
ActiveSheet.Copy

Set NewBook = ActiveWorkbook
Do
fname = Application.GetSaveAsFilename
Loop Until fname <> False
NewBook.SaveAs Filename:=fname & ".xls"
NewBook.SendMail "Toto@Toto.com", "Test", True
End Sub

(true pour a "return receipt")

Voilà Bonne Journée
@+Thierry
 
F

fabrice

Guest
SAlut tout le monde

Bien passé le week-end???

Bon, moi j'ai un petit PB avec la formule de Thierry.
Ca marche bien mais une fois avoir envoyé le fichier (1fois), j'en recois 2. Ca provient de quoi???

Merci de votre réponse.
FAb
 
@

@+Thierry

Guest
Salut Mr Fab

Oh avec toi çà m'étonnerait pas que tu aies copié deux fois le code !! lol

Mort De Rire !! Il y a DEUX méthodes au dessus !! il fallait en choisir une au lieu de tout coller... T'as pas eu un bug avec Toto peut être la valeur d'une cellule ou encore la date du jour etc... Perso jai utilisé cette méthose pour envoyer une seule feuille : (laissant le chois au User de nommer et choisir ou il veut sauver... ...au milieu !! lol

@+Thierry
 
F

fabrice

Guest
Salut Mr Thierry

Voila le code que j'ai:

Private Sub CommandButton1_Click()

If TextBox1.Value = "" Then
MsgBox "vous avez oublié de rentrer une adresse"
OptionButton1.Value = False
OptionButton2.Value = False
Load UserForm21
End If

If TextBox2.Value = "" Then
MsgBox "vous avez oublié de rentrer un objet"
OptionButton1.Value = False
OptionButton2.Value = False
Load UserForm21
End If

If OptionButton1.Value = True Then
ActiveSheet.Copy
ActiveWorkbook.SendMail Recipients:=TextBox1.Value, Subject:=TextBox2.Value
MsgBox "Votre feuille a bien été envoyé"
Unload UserForm21
End If

If OptionButton2.Value = True Then
ActiveWorkbook.SendMail Recipients:=TextBox1.Value, Subject:=TextBox2.Value
MsgBox "Votre classeur a bien été envoyé"
Unload UserForm21
End If

End Sub

Voila mon code. (je ne sais pas si tu va comprendre sans avoir l'UF) !!!

Merci de ton aide.
FAb
 
@

@+Thierry

Guest
Oui Fab

Je pense plutot que le problème vient de la conception de tes Userforms...

Questions

111)
Tu es sur un Userform1 pour : tous les controls ??? (vu que t'appelles un IserForm21 ???

222)
Combien as-tu d'optionbuttons ? 2 sur le même UserForm ? ou bien ?

333)
Je ne vois aucune difference entre ce que tu fais si OptionButton1 est True ou OptionButton2 est TRue (mis à part le contenu du MsgBox... ?

Si c'est pas une usine à gaz envoie... Mais répçond quand même çà me fera gagner du temps...

En sujet précise Bien "Forum XLS UserForm Mail de Fab"

@+Thierry
 
B

balo

Guest
jaimerais kelkes explication sur sendmail ...

jaimerais envoyer un mail automatiquement a la fin de ma macro (ma macro s'exécute a chaque fois ke je ferme mon classeur !!) ... je pense ke send mail est la commande kil me faut ... mais je dois me gourer dans les paramètres ...
je ve faire un mail sans piece jointe ki n'envoi pas mon classeur actif ...
je ve juste ke ce mail contienne un peu de texte ...

(pour ceux ke ca intéresse : ca me permettrai de prévenir la réceptionniste de l'entreprise ke le seuil est supérieur au stock, sur le fichier partagé ki gère les consommables. et donc k'il faut k'elle passe commande de ce consommable !!)
merci !!
 

Discussions similaires

Statistiques des forums

Discussions
312 215
Messages
2 086 326
Membres
103 179
dernier inscrit
BERSEB50