Bonjour,
Je suis arrivé avec l'aide de pierrot93 au code ci dessous:
Je n'arrive pas répéter la fonction en meme temps sur d'autre colonne (qui fonctionne par deux: ht et ttc) dans la meme feuille.
Je n'arrive pas à le modifier pour qu'il fonctionne. J'ai pensé à la fonction Worksheet_SelectionChange ?
Merci d'avance pour vos réponses.
Option Explicit
Public b As Boolean
Private Sub Worksheet_Change(ByVal Target As Range)
If b = True Then Exit Sub
If Target.Count > 1 Then Exit Sub
If Target.Address = Range("Taux").Address Then maprocedure
If Target.Column = 3 Or Target.Column = 4 Then
b = True
If Target.Column = 3 Then Target.Offset(0, 1) = Target * (1 + Range("Taux") / 100)
If Target.Column = 4 Then Target.Offset(0, -1) = Target / (1 + Range("Taux") / 100)
b = False
End If
End Sub
Sub maprocedure()
Dim c As Range
b = True
For Each c In Range("C2", Range("C65536").End(xlUp))
c.Offset(0, 1) = c * (1 + Range("Taux") / 100)
Next c
b = False
End Sub
Je suis arrivé avec l'aide de pierrot93 au code ci dessous:
Je n'arrive pas répéter la fonction en meme temps sur d'autre colonne (qui fonctionne par deux: ht et ttc) dans la meme feuille.
Je n'arrive pas à le modifier pour qu'il fonctionne. J'ai pensé à la fonction Worksheet_SelectionChange ?
Merci d'avance pour vos réponses.
Option Explicit
Public b As Boolean
Private Sub Worksheet_Change(ByVal Target As Range)
If b = True Then Exit Sub
If Target.Count > 1 Then Exit Sub
If Target.Address = Range("Taux").Address Then maprocedure
If Target.Column = 3 Or Target.Column = 4 Then
b = True
If Target.Column = 3 Then Target.Offset(0, 1) = Target * (1 + Range("Taux") / 100)
If Target.Column = 4 Then Target.Offset(0, -1) = Target / (1 + Range("Taux") / 100)
b = False
End If
End Sub
Sub maprocedure()
Dim c As Range
b = True
For Each c In Range("C2", Range("C65536").End(xlUp))
c.Offset(0, 1) = c * (1 + Range("Taux") / 100)
Next c
b = False
End Sub