Bonjour a tous,
J'ai crée un code macro avec l'aide que j'ai pu trouvé sur le forum, et j'en suis arrivé à un code qui fonctionne mais j'aimerai l'amélioré.
Alors, tout simple colonne A B C = donné que j'écris au fur et a mesure et D = attribution d'un code
la macro que j'ai actuellement est la suivant:
(dans la feuille)
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 4 And Target.Value = 31 Then Send_Email_Using_VBA
End Sub
(dans le module)
Sub Send_Email_Using_VBA()
Dim Email_Subject, Email_Send_From, Email_Send_To, _
Email_Cc, Email_Bcc, Email_Body As String
Dim Mail_Object, Mail_Single As Variant
Email_Subject = "test vba "
Email_Send_From = "xxxx@gmail.com"
Email_Send_To = "xxxx@gmail.com"
Email_Cc = "xxxx@gmail.com"
Email_Body = "Salut guy" & vbCr & _
"" & vbCr & "Un code 31 a été atritubé a un dossier" & vbCr & "@TT" & vbCr & vbCr
On Error GoTo debugs
Set Mail_Object = CreateObject("Outlook.Application")
Set Mail_Single = Mail_Object.CreateItem(0)
With Mail_Single
.Subject = Email_Subject
.To = Email_Send_To
.cc = Email_Cc
.BCC = Email_Bcc
.Body = Email_Body
.send
End With
debugs:
If Err.Description <> "" Then MsgBox Err.Description
End Sub
C'est un mail à titre d'information et j'aimerai juste amélioré un point EMAIL_BODY
Pour le moment dès que je mets 31 dans une des cellules de la colonne D et que je tabule, un mail part automatiquement
Là où je coince un peu c'est que j'aimerai que dans l'email_body de ma macro affiche les cellules A B et C correspondant bien surs à la bonne ligne ou a été mit le 31
exemple: je suis a la ligne 10, dans la colonne D je mets le chiffre 31 dans l'email body je veux le contenu des cellules A10 B10 et C10 en corps de message dans mon email.
Je n'arrive pas à formuler cette demande en macro. Si une personne aurai un début d'idée cela pourrai m'orienté
Merci d'avance
Nico
J'ai crée un code macro avec l'aide que j'ai pu trouvé sur le forum, et j'en suis arrivé à un code qui fonctionne mais j'aimerai l'amélioré.
Alors, tout simple colonne A B C = donné que j'écris au fur et a mesure et D = attribution d'un code
la macro que j'ai actuellement est la suivant:
(dans la feuille)
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 4 And Target.Value = 31 Then Send_Email_Using_VBA
End Sub
(dans le module)
Sub Send_Email_Using_VBA()
Dim Email_Subject, Email_Send_From, Email_Send_To, _
Email_Cc, Email_Bcc, Email_Body As String
Dim Mail_Object, Mail_Single As Variant
Email_Subject = "test vba "
Email_Send_From = "xxxx@gmail.com"
Email_Send_To = "xxxx@gmail.com"
Email_Cc = "xxxx@gmail.com"
Email_Body = "Salut guy" & vbCr & _
"" & vbCr & "Un code 31 a été atritubé a un dossier" & vbCr & "@TT" & vbCr & vbCr
On Error GoTo debugs
Set Mail_Object = CreateObject("Outlook.Application")
Set Mail_Single = Mail_Object.CreateItem(0)
With Mail_Single
.Subject = Email_Subject
.To = Email_Send_To
.cc = Email_Cc
.BCC = Email_Bcc
.Body = Email_Body
.send
End With
debugs:
If Err.Description <> "" Then MsgBox Err.Description
End Sub
C'est un mail à titre d'information et j'aimerai juste amélioré un point EMAIL_BODY
Pour le moment dès que je mets 31 dans une des cellules de la colonne D et que je tabule, un mail part automatiquement
Là où je coince un peu c'est que j'aimerai que dans l'email_body de ma macro affiche les cellules A B et C correspondant bien surs à la bonne ligne ou a été mit le 31
exemple: je suis a la ligne 10, dans la colonne D je mets le chiffre 31 dans l'email body je veux le contenu des cellules A10 B10 et C10 en corps de message dans mon email.
Je n'arrive pas à formuler cette demande en macro. Si une personne aurai un début d'idée cela pourrai m'orienté
Merci d'avance
Nico