Soustraction cumulé colonnes VBA

Résolu
Dillon13 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
Dillon13 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai besoin d'un petit coup de pouce :
Alors voilà j'ai deux colonnes dans un tableau
B : Solde
C : Dépenses
Je voudrais avoir une fonction qui dès que je remplies une cellule dans la colonne C, prenne la valeur antérieure de la colonne B et lui soustrait le montant de la valeur de la colonne C.

Exemple :
B : Solde
1: 1 000
2: = 1000 - 150 (=850)
3: = 850 - 34

C : Dépenses
1:
2: 150
3: 34



J'ai essayé avec ce code là
Sub Soustraction()
Dim i As Integer
Dim j As Integer

ActiveSheet.UsedRange.Select

For i = 2 To Range("B1000").End(xlUp).Row
For j = i + 1 To Range("C1000").End(xlUp).Row
If Not IsEmpty(Range("Cj")) Then
Cells(i + 1, 2) = Cells(i, 2) - Cells(j, 3)
End If
Next j
Next i

End Sub

Mais j'ai l'erreur 1004 qui affiche : Erreur définition par l'application ou l'objet.

Merci d'avance pour votre aide



1 réponse

via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
Bonjour

1° erreur dans la ligne If Not IsEmpty(Range("Cj")) Then , il faut écrire :
If Not IsEmpty(Range("C & j")) Then

2° Mais pourquoi passer par une macro alors qu'un simple formule suffit ? Avec 150 en C3, formule en B3 :
=SI(C3<>"";B2-C3), à étirer ensuite vers le bas

Cdlmnt
Via
0
Dillon13 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
Merci ça marche très bien avec la condition SI.

J'ai toujours tendance à vouloir passer par VBA en oubliant les choses simples.

Merci encore
0