Bonsoir,
D'une façon ou d'une autre il y a un maximum : le nombre de lignes (1 048 576) et de colonnes (1 024) d'une feuille
le principe de Decaler avec Nbval permet de prévoir toute une ligne (avec ses 1 024 colonnes) ou toute une colonne Nbval déterminant au fur et à mesure l'étendue occupée.
La formule serait, dans ce cas
RECHERCHEH(C$20;DECALER($voies.$A$1;0;0;6;NBVAL($voies.$1:$1));2;0)
Le passage $1:$1 dans le Nbval signifiant que l'on compte sur l'ensemble de la ligne 1 (de la colonne A à la colonne AMJ)
à travail égal, une formule bien construite sera toujours plus rapide à donner un résultat (et à taper) qu'une macro.
Sans avoir exploré la totalité du classeur, il me semble que l'ensemble des calculs et mises à jours devrait pouvoir se faire sans macro.
Au passage la formule
RECHERCHEH(C$20;$voies.$A$1:$ZZ$6;2;0)
ne fait pas la même chose que
RECHERCHEH(C$20;DECALER($voies.$A$1;0;0;6;NBVAL($voies.$A$1:$ZZ$1));2;0)
La 1ere fait ses recherches toujours jusqu'à la colonne ZZ, même si les colonnes sont vides
la seconde fait ses recherches en fonction de la zone occupée (Nbval détermine le nombre de colonnes occupées). c'est pour ça que l'on peut se permettre de mettre des choses comme 1:1, ce n'est pas l'étendue du tableau de recherche, c'est juste le comptage des colonnes occupées
En espérant avoir été utile
Christian F