Bonjour
je souhaiterais envoyer un mail en automatique lorsque une cellule est modifiée dans une colonne
Jusqu a la mon code fonctionne mais je voudrais que l adresse mail puisse varier en fonction du contenu de la cellule et la je bloque
exemple si la cellule
=a envoyer le mail a a@yahoo.fr
=b envoyer le mail a b@yahoo.fr
=c envoyer le mail a c@yahoo.fr
La deuxieme chose que j aimerais pouvoir modifier et l objet du mail qui devrait corresondre a ce qui se trouve en colonne "A" pour la ligne concernée
Avez vous une solution a me proposer
en vous remerciant
Voici le code actuel
Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 2017/9/12
Dim xRgSel As Range
Dim xOutApp As Object
Dim xMailItem As Object
Dim xMailBody As String
On Error Resume Next
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set xRg = Range("M3:M10000")
Set xRgSel = Intersect(Target, xRg)
ActiveWorkbook.Save
If Not xRgSel Is Nothing Then
Set xOutApp = CreateObject("Outlook.Application")
Set xMailItem = xOutApp.CreateItem(0)
xMailBody = "la cellule " & xRgSel.Address(False, False) & _
" a été renseignée le " & _
Format$(Now, "mm/dd/yyyy") & " at " & Format$(Now, "hh:mm:ss") & _
" par " & Environ$("username") & "."
With xMailItem
.To = "a@yahoo.com"
.Subject = Range("A3") & " Action a effectuer "
.Body = xMailBody
.Display
End With
Set xRgSel = Nothing
Set xOutApp = Nothing
Set xMailItem = Nothing
End If
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
je souhaiterais envoyer un mail en automatique lorsque une cellule est modifiée dans une colonne
Jusqu a la mon code fonctionne mais je voudrais que l adresse mail puisse varier en fonction du contenu de la cellule et la je bloque
exemple si la cellule
=a envoyer le mail a a@yahoo.fr
=b envoyer le mail a b@yahoo.fr
=c envoyer le mail a c@yahoo.fr
La deuxieme chose que j aimerais pouvoir modifier et l objet du mail qui devrait corresondre a ce qui se trouve en colonne "A" pour la ligne concernée
Avez vous une solution a me proposer
en vous remerciant
Voici le code actuel
Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 2017/9/12
Dim xRgSel As Range
Dim xOutApp As Object
Dim xMailItem As Object
Dim xMailBody As String
On Error Resume Next
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set xRg = Range("M3:M10000")
Set xRgSel = Intersect(Target, xRg)
ActiveWorkbook.Save
If Not xRgSel Is Nothing Then
Set xOutApp = CreateObject("Outlook.Application")
Set xMailItem = xOutApp.CreateItem(0)
xMailBody = "la cellule " & xRgSel.Address(False, False) & _
" a été renseignée le " & _
Format$(Now, "mm/dd/yyyy") & " at " & Format$(Now, "hh:mm:ss") & _
" par " & Environ$("username") & "."
With xMailItem
.To = "a@yahoo.com"
.Subject = Range("A3") & " Action a effectuer "
.Body = xMailBody
.Display
End With
Set xRgSel = Nothing
Set xOutApp = Nothing
Set xMailItem = Nothing
End If
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub