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

Envoi avancé d'un classeur par outlook

  • Initiateur de la discussion Initiateur de la discussion jameslebon
  • 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 !

J

jameslebon

Guest
Voila le topo

Il me faudrai envoyer un classeur Excel avec le classeur actif enregistré avec les modif apporté par les utilisateurs

voici le code que j'utilise il me conviens parfaitement sauf que je ne trouve pas la ligne de commande qui di de joindre le classeur actif avec les modif apporté.

Private Sub Image1_Click()
Dim MonOutlook As Object
Dim MonMessage As Object
Set MonOutlook = CreateObject("Outlook.Application")
Set MonMessage = MonOutlook.createitem(0)
MonMessage.To = Range("Affichage!B19").Value
MonMessage.cc = Range("Affichage!B21").Value
MonMessage.Subject = Range("Affichage!B20").Value
MonMessage.display
End Sub

Je serai vraiment reconnaissant si l'un de vous arrive à trouver car c vraiment galère il dois pas manquer grand choses il me semble et c super urgent pour finaliser mon fichier
 
Re : Envoi avancé d'un classeur par outlook

Bonsoir JamesLeBon 🙂,
Les critères de messages (que je connais) via OutLook
Code:
          .To = MailTo ' Destinataire
          .CC = MailCC ' Copie
          .Importance = olImportanceNormal
          .Subject = ObjetMessage ' Sujet
          .Body = CorpsMessage ' Message
          .Attachments.Add CheminDestination ' Pièce jointe
          .Categories = "Daily"
          .OriginatorDeliveryReportRequested = True ' Accusé de dépôt
          .ReadReceiptRequested = True ' Accusé de lecture
'          .Send '<<<<<<<<<<<<<<<Pour envoyer directement
          .Display '<<<<<<<<<<<<<Pour voir le mail avant envoi
Bonne soirée 😎
 
Re : Envoi avancé d'un classeur par outlook

Merci JNP pour ta réponse mais juste ce qui me manque c le code qui permet d'attacher en piece jointe le classeur actif avec les modifs apportéc juste une toute petite ligne du code. Car j'ai déja essaye plusieurs façon notamment la tienne mais certaine ne sont pas bonne car elles placent le mail en attente dans la boite d'envoi de outlook. Selon le code cela n'ouvre pas la même boite d'envoi de Outlook
 
Re : Envoi avancé d'un classeur par outlook

Hello,

Tu veux envoyer tout le classeur essaye ce code
Code:
Private Sub Image1_Click()
Dim Ol As New Outlook.Application
Dim Olmail As MailItem
Dim CurrFile As String
Set Ol = New Outlook.Application
Set Olmail = Ol.CreateItem(olMailItem)
    PathName = ThisWorkbook.FullName 'Chemin du classeur.
With Olmail
    .To = Sheets("Affichage").Range("B19").Value
    .CC = Sheets("Affichage").Range("B21").Value
    .Subject = Sheets("Affichage").Range("B20").Value
    '.Body = Sheets("Affichage").Range("B22").Value 'Pour le corps du message.
    .Attachments.Add PathName 'Pour joindre le classeur.
    '.Send 'Si tu mets Send, il envoie directement le mail.
    .Display 'Si tu mets Display ça ouvre ton message Outlook
End With
End Sub
Saches qui si tu mets ".Send" tu ne peux pas mettre ".Display", si tu mets ".Display", tu ne peux pas mettre ".Send". Ou l'un ou l'autre !

Le "Body" c'est pour si tu veux aussi ajouter un message dans le corps.

Evidemment, il faut côcher dans Référence Microsoft Outlook 11.0 Object Library.

Si tu fais ça avec un nouveau classeur, avant le premier envoi, enregistre-le si non il y aura un message d'erreur à cause du PathName = ThisWorkbook.FullName, il ne saura pas où trouver le classeur, vu que pas enregistré.

Cdt, Hulk.
 
Dernière édition:
Re : Envoi avancé d'un classeur par outlook

Merci beaucou Hulk pour ton aide précieuxe mais effectivement ca me joint le classeur mais sons les modif apporté par l'utilisateur ca joint le fichier racine vierge. Il faudrai que la piece jointe soit une copie du classeur à l'instant ou le mail est généré.
Merci je sais c pas évident lolll🙂
 
Re : Envoi avancé d'un classeur par outlook

Hello,


Place ceci ActiveWorkbook.Save après le Dim CurrFile As String
Code:
Private Sub Image1_Click()
Dim Ol As New Outlook.Application
Dim Olmail As MailItem
Dim CurrFile As String
[COLOR="DarkGreen"][B]ActiveWorkbook.Save[/B][/COLOR]
Set Ol = New Outlook.Application ...
Comme ça il sauvegarde le classeur avant l'envoi.

Cdt, Hulk.
 
Re : Envoi avancé d'un classeur par outlook

ALors j'explique la situation c'est un fichier que j'ai fé en entreprise et les salariés doivent le remplir tous les mois. Ce fichier et mis à dispositions sur le réseau et ne dois absolument pas etre modifié par l'utilisteur donc il ne faut pas l'enregistré avant l'envoi il faut juste en fait le mettre une copie dans le mail mais sauvegardé des modif apporté par l'utilisateur. Je suis compliqué je m'en excuse mais c super précis en fait comme demande.😀
 
Re : Envoi avancé d'un classeur par outlook

Petite précision pour l'instant j'utilise simplement cette ligne magique qui m'ouvre outlook, met le destinataire, l'objet et joint le fichier avec les modifs enregistré sans toucher le fichier source. Le probleme avec ce code c'est qu'il ne permet pas de mettre en copi et de mettre du texte

Private Sub Image2_Click()
Application.Dialogs(xlDialogSendMail).Show Range("Affichage!B19").Value, Range("Affichage!B20").Value
End Sub

Voila si ca peut aider certain loll
 
Re : Envoi avancé d'un classeur par outlook

Hello,

Dans ce cas, tu dois vraiment envoyer le classeur ?

Parce que si tu veux, tu peux envoyer juste une feuille de ce classeur ou une copie de la feuille voulue !

Cdt.
 
Re : Envoi avancé d'un classeur par outlook

Alors ben c pas possible car il ya une identification, une validation avec un code immatruclation et des liens dans différentes page avec recherche V et plein d'autre fonction c obligatoirement le fichier
 
Re : Envoi avancé d'un classeur par outlook

Merci beaucoup Hulk pour ton aide je sais que ce que je demande n'est pas facilee mais bon c important que ce soit exactement ce que je demande sinonca compromet tous le processus. Merci encore beaucoouppp
🙂
 
Re : Envoi avancé d'un classeur par outlook

Bonjour le forum 🙂,
Et si tu fait un SaveAs sur C: au premier niveau, tu prends le fichier pour l'envoyer, et tu le Kill à la prochaine ouverture ?
Bonne journée 😎
 
Re : Envoi avancé d'un classeur par outlook

le fait de faire un souvegarder sous serai la meilleur solution mais je ne connai pas le code permettant de le faire est ce que vous pourriez m'aider en me l'intégrant dans mon code il faudré donner un chemin genre "C:\Temp"

voici mon code:

Private Sub Image12_Click()
Dim MonOutlook As Object
Dim MonMessage As Object
Dim Corps As String
Set MonOutlook = CreateObject("Outlook.Application")
Set MonMessage = MonOutlook.createitem(0)
MonMessage.To = Range("Affichage!B19").Value
MonMessage.cc = Range("Affichage!B21").Value
MonMessage.Subject = Range("Affichage!B20").Value
Corps = "Bonjour," & vbCrLf & vbCrLf
Corps = Corps & "Veuillez trouver ci-joint le fichier." & vbCrLf & vbCrLf & "Cordialement."
MonMessage.Body = Corps
MonMessage.Attachments.Add
MonMessage.display
End Sub

Merciii
 
Re : Envoi avancé d'un classeur par outlook

Bonsoir le forum 🙂,
essaie
Code:
Private Sub Image12_Click()
[COLOR=#ff0000]ThisWorkbook.SaveAs "C:\A envoyer.xls" [/COLOR]
Dim MonOutlook As Object
Dim MonMessage As Object
Dim Corps As String
Set MonOutlook = CreateObject("Outlook.Application")
Set MonMessage = MonOutlook.createitem(0)
MonMessage.To = Range("Affichage!B19").Value
MonMessage.cc = Range("Affichage!B21").Value
MonMessage.Subject = Range("Affichage!B20").Value
Corps = "Bonjour," & vbCrLf & vbCrLf
Corps = Corps & "Veuillez trouver ci-joint le fichier." & vbCrLf & vbCrLf & "Cordialement."
MonMessage.Body = Corps
MonMessage.Attachments.Add[COLOR=#ff0000] = "C:\A envoyer.xls" [/COLOR]
MonMessage.display
End Sub
et dis nous.
Bon courage 😎
 
- 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
7
Affichages
1 K
D
Réponses
4
Affichages
1 K
D
A
Réponses
0
Affichages
771
Alghorn
A
L
Réponses
5
Affichages
2 K
lumiexcel
L
Réponses
5
Affichages
38 K
Compte Supprimé 979
C
N
Réponses
2
Affichages
918
nicolase78
N
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…