Enclencher une macro sur worksheet_change
BoJav
Messages postés
49
Statut
Membre
-
BoJav Messages postés 49 Statut Membre -
BoJav Messages postés 49 Statut Membre -
Bonjour,
J'ai créer une macro qui additionne les valeur des cellules d'une ligne et l'affiche dans une colonne ou une autre selon que le résultat de l'addition est positif ou négatif.
Je voudrais que cette macro se relance à chaque fois que je modifie les valeurs des cellules additionnées.
NB. le nombre de ligne va évoluer avec le temps.
Voici la macro
J'ai tenté dans la worksheet de mettre sur change le code suivant :
Mais Excel indique Erreur de compilation, nombre d'arguments incorrect ou affectation de propriété incorrecte.
D'avance Merci pour votre aide
J'ai créer une macro qui additionne les valeur des cellules d'une ligne et l'affiche dans une colonne ou une autre selon que le résultat de l'addition est positif ou négatif.
Je voudrais que cette macro se relance à chaque fois que je modifie les valeurs des cellules additionnées.
NB. le nombre de ligne va évoluer avec le temps.
Voici la macro
Sub Test()
Dim LR As Integer
Dim x As Integer
LR = Range("A500").End(xlUp).Row
For i = LR To 3 Step -1
Range("F" & i).FormulaR1C1 = "=RC[-4]+RC[-3]+RC[-2]+RC[-1]"
x = Range("F" & i).Value
If x >= 0 Then
Cells(i, 6).Value = x
Else
Cells(i, 7).Value = x * -1
Cells(i, 6).ClearContents
End If
Next
End Sub
J'ai tenté dans la worksheet de mettre sur change le code suivant :
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("B3:E300")) Is Nothing Then
Call Test(Intersect(Target, Range("B3:E300")))
End If
End Sub
Mais Excel indique Erreur de compilation, nombre d'arguments incorrect ou affectation de propriété incorrecte.
D'avance Merci pour votre aide
Configuration: Windows / Chrome 97.0.4692.71
A voir également:
- Enclencher une macro sur worksheet_change
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Télécharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Jitbit macro recorder - Télécharger - Confidentialité
- Macro maker - Télécharger - Divers Utilitaires
- Macro word - Guide
4 réponses
bonsoir le fil, bonsoir le forum,
Si j'ai bien compris, peut-être comme ça :
Si j'ai bien compris, peut-être comme ça :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S As Double 'ou Integer ?
If Application.Intersect(Target, Columns("B:E")) Is Nothing Then Exit Sub
S = Application.WorksheetFunction.Sum(Cells(Target.Row, 2).Resize(1, 4))
If S >= 0 Then
Cells(Target.Row, 6).Value = S: Cells(Target.Row, 7).Value = ""
Else
Cells(Target.Row, 6).Value = "": Cells(Target.Row, 7).Value = S
End If
End Sub