'ne pas oublier de modifier le % usd ici 1.40- 23/08/2010
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 10 Or Target.Column = 11 Or Target.Column = 12 Then
Select Case Target.Column
Case 10
If Cells(Target.Row, 12) <> "" Then Cells(Target.Row, 13) = Cells(Target.Row, 10) * Cells(Target.Row, 12)
Case 11
If Cells(Target.Row, 12) <> "" Then Cells(Target.Row, 13) = Cells(Target.Row, 11) * Cells(Target.Row, 12) / 1.4
Case 12
If Cells(Target.Row, 10) <> "" Then Cells(Target.Row, 13) = Cells(Target.Row, 10) * Cells(Target.Row, 12)
If Cells(Target.Row, 11) <> "" Then Cells(Target.Row, 13) = Cells(Target.Row, 11) * Cells(Target.Row, 12) / 1.4
End Select
End If
'End Sub
'========================================
'Colorie la ligne si o ou p remplie
'Evènement "_Change" de la feuille.
'Se déclanche à chaque changement de cellule (lorsqu'on valide la saisie).
'"Target" représente la cellule (ou zone) qui vient de changer.
'Private Sub Worksheet_Change(ByVal Target As Range)
'Vérifier si la cellule qui vient de changer est dans la colonne O ou P.
'Sinon, quitter la macro.
If Application.Intersect(Target, Range("O:P")) Is Nothing Then Exit Sub
'Si Target est dans la colonne O est que la valeur saisie est une date
If Not Application.Intersect(Target, Range("O:O")) Is Nothing And IsDate(Target.Value) Then
Target.EntireRow.Interior.ColorIndex = 38
'sinon, on effectue le test sur la colonne P
ElseIf Not Application.Intersect(Target, Range("P:P")) Is Nothing And IsDate(Target.Value) Then
Target.EntireRow.Interior.ColorIndex = 15
End If
'=========================================
' "Inscrire 1 dans la colonne QTY dès customer dans A"
If Target.Column > 1 Or Target.Count > 1 Then Exit Sub
If Not IsEmpty(Target) And IsEmpty(Target.Offset(0, 11)) Then _
Target.Offset(0, 11).Value = 1
'If Target.Column <> 1 Then Exit Sub
'Range("L" & Target.Row) = 1
End Sub