Disons que j'ai un tableau avec trois colonnes (l'ordre est important et ne peut pas être changé), les lignes sont triées par A:
A B C
date ID last_date
10/05/2015 29A06E95
10/08/2015 E5A884C4
10/12/2015 D24F4975
10/12/2015 D24F4976
10/21/2015 29A06E95
Pour toute ligne, si l'ID apparaît également dans une ligne au-dessus de la ligne en cours, je souhaite renseigner la colonne C avec la date la plus récente (ou, puisque les lignes sont triées par A, la valeur de date de la ligne précédente avec le même ID ). Par exemple, le résultat ressemblerait à ceci:
A B C
date ID prev_date
10/05/2015 29A06E95 <blank>
10/08/2015 E5A884C4 <blank>
10/12/2015 29A06E95 10/05/2015
10/12/2015 D24F4976 <blank>
10/21/2015 29A06E95 10/12/2015
Comment puis-je faire cela (je n'ai pas été en mesure d'utiliser MATCH ou VLOOKUP car le premier trouve la première correspondance et le dernier veut la valeur de recherche dans la première colonne)?
En outre, j'ai déjà vu des solutions avec des formules matricielles, mais celles-ci ne semblent pas fonctionner dans un contexte de table de données.
Ne pouvez-vous pas simplement créer une deuxième feuille avec les colonnes et les dates inversées? Parce qu'alors la solution est un simple vlookup.
la source
Je pense que cela devrait le faire:
=IFERROR(IF(A2=INDEX(MIN($A$2:$A$6),MATCH(B2,$B$2:$B$6,0)),"",INDEX(MIN($A$2:$A$6),MATCH(B2,$B$2:$B$6,0))),"")
Placez ceci dans C2, éditez les plages selon vos besoins, entrez sous forme de tableau (avec CTRL+SHIFT+ENTER) et faites glisser vers le bas.
Edit: Okay tant pis, apparemment, les tableaux ne fonctionnent pas? Pouvez-vous clarifier ce que vous entendez par "contexte de table"? Les formules AFAIK Array devraient quand même fonctionner avec des tables, non?
la source