Microsoft 365 Envoi Mail Automatique avec Condition

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 !

ELSONCe

XLDnaute Junior
Bonjour à Tous,

J'ai actuellement le code ci-dessous qui fonctionne merveilleusement bien, cependant j'aimerais pouvoir récupérer le numéro Client en Colonne "D" (4) et le nom du client en Colonne "E" (5) pour le copier dans le Body.

< Private Sub Worksheet_Change(ByVal Target As Range)
Dim Adresse As String, olApp As Object, M As Object
If Target.Column = 12 And Target.Value = "ACP" Then
Adresse = "alain.deloin@inconnu.fr"
Set olApp = CreateObject("Outlook.Application")
Set M = olApp.CreateItem(olMailItem)
With M
.Subject = "Client ACP"
.Body = "la cellule " & Target.Address(0, 0) & " a été modifiée"
.Recipients.Add Adresse
.Send
End With
End If
End Sub
/>

Résultat souhaité : Envoi Mail vraiment automatique quand le mot "ACP" est renseigné dans la Colonne 12 en récupérant le n°client et le nom client en colonne 4 et 5 sur la même ligne pour l'insérer dans le body.

J'espère avoir été suffisamment explicite 🙂

Merci par avance pour vos recherches et votre retour.

Bonne journée !
 

Pièces jointes

Dernière édition:
Bonjour ELSONCe

Merci pour 1 modification sur 2 😁

Voici le code demandé (mise entre balises)
VB:
Const olFormatHTML As Long = 2
Const olMailItem As Long = 0

Private Sub Worksheet_Change(ByVal Target As Range)
  Dim Adresse As String, olApp As Object, M As Object
  Dim NumClt As String, NomClt As String
 
  If Not Intersect(Range("L:L"), Target) Is Nothing Then
    If Target.Value = "ACP" Then
      NumClt = Range("D" & Target.Row).Value
      NomClt = Range("E" & Target.Row).Value
      Adresse = "alain.deloin@inconnu.fr"
      Set olApp = CreateObject("Outlook.Application")
      Set M = olApp.CreateItem(olMailItem)
      With M
        .Subject = "Client ACP"
        .BodyFormat = olFormatHTML
        .HTMLBody = NumClt & " " & NomClt & "<br>" _
         & "la cellule " & Target.Address(0, 0) & " a été modifiée"
        .Recipients.Add Adresse
        .Send
      End With
    End If
  End If
End Sub

A+
 
- 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

  • Question Question
Microsoft 365 Code VBA
Réponses
7
Affichages
638
Réponses
4
Affichages
362
Réponses
2
Affichages
718
Retour