J'ai essayé de simplifier ce que je fais, mais en réalité, j'ai compliqué le truc lol.
Je crois que tu vas comprendre mieux avec le code ci dessous:
On a effectivement deux colonnes avec a peu près 2000 lignes.
1 106 353
2 206 453
3 453 546
4 454 768
5 767 254
6 765 456
7 698 255
8 534 465
9 543 357
10 536 645
11 978 243
12 143 536
13 563 765
....
Tu prends un point au hasard, par exemple la ligne 7.
Ensuite, je regarde, autour d'un voisinage de 5 lignes de part et d'autres de ce point, si les valeurs de la colonne de droite sont supérieures à celle de gauche. Cela veut dire que pour le point 7 en question, on va regarder si les valeurs entre la ligne 2 (=7-5) et la ligne 12=7+5 de la colonne à droite sont supérieures à celle de gauche.
Dans notre exemple les lignes 2,3, 4,10 et 12 vérifient la condition.
Ensuite, je compte le nombre de fois on cette condition est remplie. Il y en a 5 pour ce point.
Cela me donne le code suivant:
Range("A1").FormulaArray = "=SUM(IF(R" & ligne_b & "C" & colonne_prec & ":R" & ligne_h & "C" & colonne_prec & " <>R" & ligne_b & "C" & colonne & ":R" & ligne_h & "C" & colonne & ",1,0))"
Partager