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

modification code pour envoi mail

MASSJIPE

XLDnaute Impliqué
Bonjour
J'ai récupéré un code pour envoyer une plage de cellule Excel via Outlook en corps de message
pour la plage de cellule sur Outlook c'est ok mais il envoi le mail directement sur ma messagerie
je cherche à garder le message ouvert pour sélectionner moi même les destinataires et en CC
Sous la ligne de code .Introduction = "bonjour , ci joint les données ..." je voudrais écrire d'autre lignes
mais voila je ne sais pas comment faire
Merci

Sub envoiPlageCellules_Excel()
ActiveSheet.Range("A1:I17").Select ' la plage de cellules à envoyer
ActiveWorkbook.EnvelopeVisible = True
With ActiveSheet.MailEnvelope
.Introduction = "bonjour , ci joint les données ..."
.Item.To = ""
.Item.Subject = "le sujet"
.Item.Send
End With
End Sub
 

Pièces jointes

  • Classeur1.xlsm
    51.7 KB · Affichages: 30
  • Classeur1.xlsm
    51.7 KB · Affichages: 27
  • Classeur1.xlsm
    51.7 KB · Affichages: 33

Roland_M

XLDnaute Barbatruc
Re : modification code pour envoi mail

bonjour,

j'ai pas outlook mais ...
voir avec ceci Display !
.Display '<<<<< Pour voir le mail avant envoi
.Send '<<<<<<< Pour envoyer direct(utiliser l'un ou l'autre pas les deux!)
 

MASSJIPE

XLDnaute Impliqué
Re : modification code pour envoi mail

Bonjour
J'ai une erreur d'exécution '424' = objet requis
débogage en jaune Item.Display

par contre si Outlook est fermé cela fonctionne il me reste à mettre les destinataires. Mais si il est ouvert le mail va directement dans ma messagerie

si Outlook est fermé ou ouvert et si je renseigne des adresses mail dans .Item.To = "a.b@sfr.fr" le mail par directement
 

MASSJIPE

XLDnaute Impliqué
Re : modification code pour envoi mail

Re
J'ai trouvé un autre code qui fonctionne dans les deux sens avec Outlook
Comment mettre plusieurs lignes de introduction
Sub EnvoiPlage()
' envoi d'une plage de cellules via Outlook
' Outlook doit être démarré.

Dim Plage As Range

On Error Resume Next
Set Plage = Application.InputBox("Sélectionnez la plage à envoyer", Type:=8)
If Err.Number <> 0 Then
Err.Clear
MsgBox "Aucune plage sélectionnée"
Exit Sub
End If

On Error GoTo 0
Plage.Select
' Affiche le message dans le classeur
ActiveWorkbook.EnvelopeVisible = True
With ActiveSheet.MailEnvelope
'"Introduction" représente un texte à afficher au-dessus de la plage de cellules dans le corps du message
.Introduction = "Bonjour merci."
'"Item" représente un objet Outlook "MailItem".
.Item.To = ""
.Item.Cc = "jp.m@cegetel.net"
.Item.Subject = "Prise en compte du sujet"
.Item.display
End With
End Sub
 

Discussions similaires

Réponses
7
Affichages
439
Réponses
2
Affichages
533
Réponses
1
Affichages
274
Compte Supprimé 979
C
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…