Bonjour à vous,
Je pensais avoir résolu mon problème en adaptant le VBA proposé par
@sylvanu. Du moins cela fonctionnait lors de mes précédents tests.
Mais voilà, aujourd'hui je devais concrétiser l'essai et je n'obtiens pas le résultat escompté. J'ai le résultat, j'ouvre le fichier sur un autre PC et je perds le résultat. Bref, mes connaissances sont trop limitées en VBA, c'est sans doute banal mais j'abandonne cette piste prometteuse et je reviens à ce que je connais.
Finalement j'ai trouvé en imbriquant plusieurs formules. Ce n'est franchement pas élégant mais ça fonctionne.
Comme dit précédemment, je suis contraint de figer le nombre de lignes de calcul entre chaque semaine. Disons 2 dans mon exemple. Au final, je ne cherche plus 5j minimum entre 2 jours de travail mais 7 car 5 cellules vides + 2 cellules de calcul.
Par chance, les jours de travail sont des cellules contenant du texte ce qui les différentient des calculs intermédiaires. Donc j'ai créé une matrice de fréquence des jours consécutifs contenant du texte (c'est la première fois que j'utilise cette formule, il y a sans doute moyen d'optimiser tout cela car je ne la maitrise pas).
Une fois cette matrice créée, je la filtre pour en tirer uniquement une matrice contenant des séquences supérieur ou égale à 7. Cela réduit grandement le nombre de lignes.
Maintenant j'ai une matrice comportant autant de lignes que de WE d'au moins 5J. Je compte les lignes et c'est gagné.
Je remercie les gens qui prennent le temps de répondre à nos problèmes. Cela m'a permis de progresser. Mon problème est résolu mais si quelqu'un est motivé pour optimiser mon code, je suis preneur. J'ai toujours un fichier qui subit des lenteurs à cause du manque d'optimisation. J'ai toujours besoin d'apprendre.
Je joins mon fichier exemple pour illustrer.