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

XL 2016 Compléter cellule une fois la macro réalisée

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 !

Nikoko

XLDnaute Nouveau
Bonjour à tous,

J'utilise le code ci-dessous pour envoyer un mail via excel en fonction des critères d'une ligne.
Je souhaiterai une fois la macro réalisée afficher un message "envoyé" dans la colonne H.

Avez-vous une idée?


VB:
'************Envoyer les mails via outlook
Private Sub CommandButton1_Click()

Dim LeMail As Variant
Dim ligne As Integer

Set LeMail = CreateObject("Outlook.Application") 'création d'un objet outlouk

For ligne = 6 To 9

    If Range("e" & ligne) = "Annuler" And Range("F" & ligne) = "4j" Then 'critère des cellules pour envoyer le mail
  
        With LeMail.CreateItem(olMailItem) ' informe le programme que nous voulons envoyer un mail.
            .Subject = Range("A" & ligne) & Range("D11") 'le sujet + le nom
            .To = Range("D" & ligne) 'placer l'adresse mail de la ligne
            .CC = "marielle@xxxxx.fr" 'placer l'adresse mail en copie
            .Body = Range("D13") & Range("A" & ligne) & Range("F11") & Range("b" & ligne) & Range("D15") 'placer message dans le mail
            .Attachments.Add "C:\Users\xxxxxxx\Desktop\signature.JPG" 'joindre l'image de la signature
            .HTMLBody = .HTMLBody & "<br><img src='cid:signature.JPG' width='700' height='350'><br>" 'Placer l'image de la signature
            .Display 'afficher le mail avant de l'envoyer sinon placer send pour envoyer
          End With
    End If
Next ligne

End Sub
Merci par avance,
 
Dernière édition:
Bonjour Niloko, le forum

Voila qui devrait fonctionner :
Code:
'************Envoyer les mails via outlook
Private Sub CommandButton1_Click()

Dim LeMail As Variant
Dim ligne As Integer

Set LeMail = CreateObject("Outlook.Application") 'création d'un objet outlouk

For ligne = 6 To 9

    If Range("e" & ligne) = "Annuler" And Range("F" & ligne) = "4j" Then 'critère des cellules pour envoyer le mail
  
        With LeMail.CreateItem(olMailItem) ' informe le programme que nous voulons envoyer un mail.
            .Subject = Range("A" & ligne) & Range("D11") 'le sujet + le nom
            .To = Range("D" & ligne) 'placer l'adresse mail de la ligne
            .CC = "marielle@grdf.fr" 'placer l'adresse mail en copie
            .Body = Range("D13") & Range("A" & ligne) & Range("F11") & Range("b" & ligne) & Range("D15") 'placer message dans le mail
            .Attachments.Add "C:\Users\xxxxxxx\Desktop\signature.JPG" 'joindre l'image de la signature
            .HTMLBody = .HTMLBody & "<br><img src='cid:signature.JPG' width='700' height='350'><br>" 'Placer l'image de la signature
            .Display 'afficher le mail avant de l'envoyer sinon placer send pour envoyer
          End With
    
      Range("H" & ligne)).Value ="Envoyé"

End If
Next ligne
End Sub
@Phil69970
 
En te répondant, je viens de voir que c'était juste une faute de frappe dans ton code. Il y avait simplement une parenthèse en double :
VB:
Range("H" & ligne)[B][COLOR=rgb(209, 72, 65)])[/COLOR][/B].Value ="Envoyé"

Il me semble que ça vient de là mais je ne suis pas expert. Quoi qu'il en soit je te remercie aussi pour ta réponse.
 
- 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

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…