Passer une variable "compteur" dans ma formule.

Missel

XLDnaute Nouveau
Bonjour à tous,

Merci pour ce forum qui ma servit pour écrire des tous petits programmes.
Par contre, je cale sur celui-ci et j'aurais besoin de vos connaissances.

Objet :
Mon programme vérifie l'égalité des valeurs entre les cellules de la colonne B, si égal descend d'une ligne. Si différent écrit la formule dans la cellule K de la ligne de la dernière égalité.
"=IF(RC[-4]<R[-21]C[-7],""GAP BAISSIER"",""GAP HAUSSIER"")"
dans la cellule K de la ligne de la dernière égalité.
Puis continue ainsi jusqu'à la fin de la plage.
Je voudrais que ma formule compare la 1er ligne colonne B avec la dernière ligne colonne G de chaque groupe d'égalité de la colonne B.
Ce qui n'est pas le cas, à cause de R[-21] qui est une valeur fixe.
Je mets en pièce jointe le fichier excel pour vous aider à comprendre.

Voici le code
Sub Macro11()

Dim Cel1 As Range
Dim Cel2 As Range
Dim Compteur As Integer

Compteur = 1



Set Cel1 = Range("B2:B10000")
Set Cel2 = Range("B2:B10000")

Range("B1").Select
For Each Cel2 In Cel1
If Cel2 <> ActiveCell.Offset(Compteur +
1, 0).Range("A1") Then
Cel2.Offset(0, 9) = "=IF(RC[-4]<R[-21]C[-7],""GAP BAISSIER"",""GAP HAUSSIER"")"
Compteur = Compteur + 1
Else
Compteur = Compteur + 1
On Error GoTo 0
End If
Next Cel2

End Sub

En pièces jointe le fichier modèle.

Par avance merci pour votre aide précieuse.
 

Pièces jointes

  • EUROA_2012-11-27.xls
    44 KB · Affichages: 31

pierrejean

XLDnaute Barbatruc
Re : Passer une variable "compteur" dans ma formule.

Bonjour Missel

Teste la macro suivante

Code:
Sub test()
debut = 2
For n = 2 To Range("A" & Rows.Count).End(xlUp).Row
  If Range("A" & n + 1) <> Range("A" & n) Then
     Range("K" & n).FormulaLocal = "=SI(G" & n & "<D" & debut & ";""GAP BAISSIER"";""GAP HAUSSIER"")"
     debut = n + 1
  End If
Next
End Sub
 

Discussions similaires

Réponses
7
Affichages
391
Réponses
8
Affichages
492

Statistiques des forums

Discussions
312 429
Messages
2 088 350
Membres
103 822
dernier inscrit
kader55