J’ai l’habitude de travailler avec RECHERCHEV mais cette fois j’ai un défi. Je ne veux pas la première valeur correspondante, mais la dernière. Comment faire ? (Je travaille avec LibreOffice Calc mais une solution MS Excel devrait être tout aussi utile.)
La raison est que j’ai deux colonnes de texte avec des milliers de lignes, disons que l’une est une liste de bénéficiaires de transactions (Amazon, Ebay, employeur, épicerie, etc.) et l’autre est une liste de catégories de dépenses (salaires, impôts, ménage, loyer, etc.). Certaines transactions n’ont pas la même catégorie de dépenses à chaque fois, et je veux récupérer la plus récemment utilisée. Notez que la liste n’est triée par aucune colonne (en fait par date), et je ne veux pas modifier l’ordre de tri.
Ce que j’ai (sans la gestion des erreurs) est la formule habituelle de « première correspondance » :
=VLOOKUP(
[payee field] , [payee+category range] , [index of category column] ,
0 )
J’ai vu des solutions comme celle-ci, mais j’obtiens des erreurs #DIV/0! :
=LOOKUP(2 , 1/( [payee range] = [search value] ) , [category range] )
La solution peut être n’importe quelle formule, pas nécessairement RECHERCHEV. Je peux aussi inverser les colonnes bénéficiaire/catégorie. Juste pas de changement de colonne de tri, s’il vous plaît.
Points bonus pour une solution qui choisit la valeur la plus fréquente plutôt que la dernière !
Source : Super User