Alors je viens de tester ça:
=INDEX('Historique commentaires'!F:F;MAX(SI('Historique commentaires'!A:A=I50;LIGNE(A:A))))
qui transformé par macro donne ça:
.Range("N" & ligne).FormulaArray = _
"=INDEX('Historique commentaires'!C[-8],MAX(IF('Historique commentaires'!C[-13]=RC[-5],ROW(C[-13]))))"
Résultat ça marche!
Mais (et oui...) les lignes vides sont remplies par le titre de la colonne.
J'ai donc modifié la formule ainsi (qui fonctionne):
=SI(GAUCHE($I56;5)="Total";"";SI(ESTERREUR(INDEX('Historique commentaires'!F:F;MAX(SI('Historique commentaires'!A:A=I56;LIGNE(A:A)))));"";SI(INDEX('Historique commentaires'!F:F;MAX(SI('Historique commentaires'!A:A=I56;LIGNE(A:A))))=0;"";INDEX('Historique commentaires'!F:F;MAX(SI('Historique commentaires'!A:A=I56;LIGNE(A:A)))))))
qui transformé par macro donne ça:
.Range("N" & ligne).FormulaArray = _
"=IF(LEFT(RC9,5)=""Total"","""",IF(ISERROR(INDEX('Historique commentaires'!C[-8],MAX(IF('Historique commentaires'!C[-13]=RC[-5],ROW(C[-13]))))),"""",IF(INDEX('Historique commentaires'!C[-8],MAX(IF('Historique commentaires'!C[-13]=RC[-5],ROW(C[-13]))))=0,"""",INDEX('Historique commentaires'!C[-8],MAX(IF('Historique commentaires'!C[-13]=RC[-5],ROW(C[-13])))))))"
La catastrophe, ça fait bugger la macro. J'en devient fou...