Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

enregistrer et envoyer par mail feuille excel

  • Initiateur de la discussion Initiateur de la discussion obirah
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

O

obirah

Guest
bonjour,
je souhaiterais enregistrer une feuille d'un classeur excel (si possible la renommer en fonction d'une valeur située dans une cellule du classeur) et de l'envoyer par mail.

Si quelqu'un trouve une macro qui réunit ces actions sinon une pour enregistrer et une pour envoyer.

Merci d'avance
 
Re : enregistrer et envoyer par mail feuille excel

bonjour
est-ce que tu veux envoyer cette feuille excel en pièce jointe (modifiable)
ou en corps de message
si tu ne veux pas que le destinataire puisse modifier cette feuille tu peux la convertir en pdf
 
Re : enregistrer et envoyer par mail feuille excel

Bon voila il s'agit d'un programme qui liste tous les fichiers (commençant par "Cl_") dans un répertoire, qui va chercher dans un onglet le mail de chaque client et qui envoie tous les fichiers par mail. Ensuite les fichiers envoyés vont dans un autre répertoire de l'ordinateur
Regarde si ça peut aller pour toi et si tu t'en sors

Attention pour faire fonctionner ce programme il faut aller dans VBA outils référence et valider toutes les références qui ont trait à outlook

Sub EnvoiMail()

Dim NomFich() As String, No As Integer, fich1 As String, chemin1 As String, chemin2 As String, mail1 As String, cli1 As String, efichier As String, dfichier As String
Dim myfso As Object, em1 As String, dest1 As String, pj1 As String
Dim olapp As Outlook.Application
Dim msg As MailItem

No = 0 'lister les fichiers dans le répertoire
fich1 = "Cl_*.xl*"
chemin1 = Sheets("Présentation").Range("K2")
chemin2 = Sheets("Présentation").Range("Q2")
ReDim NomFich(No)
NomFich(No) = Dir(chemin1 & fich1)
Do While NomFich(No) <> ""
No = No + 1
ReDim Preserve NomFich(No)
NomFich(No) = Dir()
Loop
For No = 0 To UBound(NomFich)
cli1 = Left(NomFich(No), 8) 'récupérer le n° du client dans le libellé du fichier

Set c = Sheets("Clients").Range("A6:A65000").Find(cli1)
If Not c Is Nothing And NomFich(No) <> "" Then
mail1 = c.Offset(0, 29) 'et récupérer l'adresse mail

pj1 = chemin1 & NomFich(No)
'envoyer le fichier sur l'adresse mail 'Penser à Outils/Références Outlook
'Paramétrer un compte dans outlook en sortie (voir aide dans gmail)
Set olapp = New Outlook.Application
Set msg = olapp.CreateItem(olMailItem)
msg.To = mail1
msg.CC = ""
msg.Subject = "Biostar AR de commande"
msg.Body = ""
'-- pj
msg.Attachments.Add Source:=pj1
Attendre 1
While Left(NomFich(No), 8) = Left(NomFich(No + 1), 8)
pj1 = chemin1 & NomFich(No + 1)
msg.Attachments.Add Source:=pj1
Attendre 1
No = No + 1
Wend
msg.Display 'ou Send sans validation manuelle
Attendre 1
End If
Next
No = 0 'déplacement des fichiers vers AR_envoye
For No = 0 To UBound(NomFich)
em1 = chemin1 & NomFich(No)
dest1 = chemin2 & NomFich(No)
While Dir(em1) <> ""
Set myfso = CreateObject("Scripting.FileSystemObject")
myfso.MoveFile em1, dest1
Attendre 5
Set myfso = Nothing
Wend
Next

End Sub
 
Re : enregistrer et envoyer par mail feuille excel

je veux que la feuille soit en pièce jointe, après pour le format excel ou pdf de l'enregistrement je ne sais pas trop encore.
je veux bien les deux macros, et j'utiliserais celle qui me convient le mieux. parc ontre pour l'enregistrement en pdf il faudra ajouter un autre programme non?
 
Re : enregistrer et envoyer par mail feuille excel

finalement je vais faire plus simple.
Une macro pour enregistrer une feuille dans un classeur et lui donner le nom situe dans la cas A1
je pansais qu'excel prenait la valeur en A1 par défaut pour nommer le fichier mais ca ne marche pas
j'ai testé en faisant nouvelle macro puis deplacer la feuille dans un fichier (classeur 1 par defaut) mais après quand je fais enregistrer sous il me met classeur et non ce qui est en A1.

Sinon merci philippe27 pour ces recherches.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
4
Affichages
166
  • Question Question
Réponses
5
Affichages
620
Réponses
12
Affichages
644
Réponses
2
Affichages
162
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…