Bonsoir.
Le problème semble se produire dans le cas où la dernière ligne de données est à retenir, comme une Like "pause*" dans ce cas.
Vous ne testez alors pas si c'est quand même aussi la dernière ligne.
Vous auriez peut être moins de problème avec deux boucles imbriquées: une grande qui fait les débuts et les totaux et une petite qui fait les détails, le cumul et incrémente i, le n°ligne de donnée (je prends toujours L, moi m'enfin bon). Ce ne serait donc plus du For…Next mais deux Do, le plus interne, se terminant par If i > UBound(tableau, 1) Then Exit Do suivi de Loop Until tableau(i, 1) <> ""
Ce seraient donc les mêmes instructions derrière en sortie de boucle qui sortiraient le total, aussi bien quand on change de paquet qu'à la fin.
Une structure Début/Détail/Fin quoi.