Macro lorsqu'une cellule d'une colonne change

timeislimite Messages postés 3 Date d'inscription jeudi 4 décembre 2008 Statut Membre Dernière intervention 21 décembre 2008 - 20 déc. 2008 à 23:16
Sacabouffe Messages postés 9427 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 29 mai 2009 - 21 déc. 2008 à 09:16
Cette macro est pour le changement ds la cellule B4

1)Se que je désire dans un premier temps; si la cellule B6 change je veux que la Macro s'active aussi (en fait pour tout changement des valeurs de la colonne B je désire que la macr s'active)

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "B4" Then
Call SendMail
End If
End Sub

2)deuxièmement ds ma SendMail ()
j'envoie un email mais je désire que le titre ainsi que l'objet change avec la cellule qui change (Ex: pour B4 le Subject=B4 et Bodv= "Objet: " & [A4] & "et " & [A5]) (Pour B6 je désire que le Subject=B6 et BBodv= "Objet: " & [A6] & "et " & [A7])

Donc conditionnel .... quelqu'un peu m'aider merci

Sub SendMail()


Dim Ol As New Outlook.Application
Dim Olmail As MailItem
Dim CurrFile As String

Set Ol = New Outlook.Application
Set Olmail = Ol.CreateItem(olMailItem)
With Olmail
.To = Range("B1").Value
.Subject = Range("B4").Value
.Body = "Objet: " & [A4] & "et " & [A5]
' .Attachments.Add "c:\data\essai.doc"
.Send

End With
End Sub
A voir également:

2 réponses

wilfried_42 Messages postés 907 Date d'inscription mardi 19 août 2008 Statut Contributeur Dernière intervention 8 décembre 2009 244
21 déc. 2008 à 06:58
bonjour

à essayer
Private Sub Worksheet_Change(ByVal Target As Range) 
    If Target.column = 2 Then 
        Call SendMail(Target.value)
    End If 
End Sub 

pour sendmail
Sub SendMail(Obj as string)

la valeur de la cellule B, quelque soit la ligne se retrouve dans Obj
1
Sacabouffe Messages postés 9427 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 29 mai 2009 1 835
21 déc. 2008 à 09:16
Salut
À essayer aussi, ça pourra lui servir...
Ciao
0