Table des matières
VLOOKUP est une fonction très populaire dans Excel qui fait référence à la recherche verticale. Nous pouvons utiliser la fonction intégrée VLOOKUP ou nous pouvons même créer nos propres formules qui fonctionneront comme un lookup vertical pour retourner une valeur avec des critères plus dynamiques. Dans cet article, je vais montrer comment trouver la dernière valeur dans une colonne avec la fonction VLOOKUP dans Excel.
Télécharger le livre de pratique
Téléchargez le classeur Excel que nous avons utilisé pour préparer cet article.
VLOOKUP Dernière valeur dans la colonne.xlsxUtilisation de la fonction VLOOKUP pour trouver la dernière valeur d'une colonne
Commençons par nous présenter à notre classeur. Dans cette feuille de données, j'ai utilisé 3 colonnes et 10 rangs de présenter les montants des ventes de certains vendeurs en fonction des dates correspondantes.
Dans cette méthode, nous allons trouver la dernière occurrence d'une valeur en utilisant la méthode suivante la fonction VLOOKUP . VLOOKUP signifie Recherche verticale Il s'agit d'une fonction qui permet à Excel de rechercher une certaine valeur dans une colonne. Ici, nous avons 3 montants de vente différents, à savoir Bill. Maintenant nous allons trouver le montant de ses dernières ventes en Cellule G5
Étapes :
➦ Activer Cellule G5, tapez la formule donnée ci-dessous :
=VLOOKUP(F5,C5:D13,2)
➦ Hit the Entrez et vous obtiendrez la dernière occurrence de ses ventes.
Mais VLOOKUP ne donnera pas la bonne réponse pour des données non triées en mode approximatif. Voir l'image ci-dessous.
Et si nous utilisons le correspondance exacte pour le quatrième argument, il affichera la première correspondance comme dans l'image ci-dessous. Parce que vlookup utilise la recherche binaire. Donc, quand il trouve une valeur plus grande que la valeur de recherche, il revient à la valeur précédente pour l'afficher, comme dans l'image ci-dessous.
Pour surmonter cette situation et trouver la dernière occurrence de données non triées, nous devrons utiliser des fonctions de recherche ou d'autres formules combinées, que nous aborderons dans les sections suivantes.
Alternatives à la fonction VLOOKUP pour trouver la dernière valeur d'une colonne
Nous allons maintenant appliquer quatre méthodes alternatives pour trouver la dernière valeur d'une colonne.
Méthode 1 : Utiliser la fonction LOOKUP pour trouver la dernière valeur d'une colonne
Ici nous allons trouver la dernière valeur d'une colonne avec la fonction LOOKUP dans Excel. Le LOOKUP est utilisée pour rechercher dans une seule colonne ou ligne une valeur particulière au même endroit dans une deuxième colonne ou ligne. Je vais trouver le dernier montant des ventes ici dans Cellule G4.
Des pas :
➦ Activer Cellule G4.
➦ Tapez la formule donnée ci-dessous :
=LOOKUP(2,1/(D:D""),D:D)
➦ Puis appuyez sur la touche Entrez et vous obtiendrez la dernière valeur.
👉 Répartition des formules :
➥ D:D""
Ici, il vérifiera si les cellules dans Colonne D sont vides ou non. Il retournera comme-
{FALSE;FALSE;FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;FALSE.....}
➥ 1/(D:D"")
Nous avons divisé 1 par le résultat. Comme FALSE signifie 0 et VRAI signifie 1 le résultat sera donc le suivant :
{#DIV/0!;#DIV/0!;#DIV/0!;1;1;1;1;1;1;1;1;1;#DIV/0!;#DIV/0!}
➥ LOOKUP(2,1/(D:D""),D:D)
J'ai défini la valeur de recherche 2 parce que la fonction de recherche trouvera 2 dans la colonne, lorsqu'elle atteindra une erreur, elle reviendra à la valeur 1 la plus proche et affichera ce résultat.
367
Méthode 2 : Utilisez les fonctions INDEX et MATCH pour trouver la dernière valeur d'une colonne.
Ici, nous utiliserons la combinaison de la INDEX et MATCH fonctions. La fonction INDEX renvoie une valeur ou la référence à une valeur dans un tableau ou une plage. Et la fonction MATCH est utilisé pour rechercher un élément spécifié dans une plage et renvoie ensuite la position relative de cet élément dans la plage.
Des pas :
➦ Tapez la formule donnée ci-dessous en Cellule G5
=INDEX(D5:D13,MATCH(F5,C5:C13,1))
➦ Hit Entrez bouton.
👉 Comment fonctionne la formule ?
➥ MATCH(F5,C5:C13,1)
Ici la fonction MATCH est utilisé pour trouver la valeur de Cellule F5 pour les éléments triés dans l'ordre croissant du tableau C5:C13. Si le troisième argument est '1', cela signifie qu'il y a une correspondance approximative. Maintenant, la fonction retournera comme...
6
Il affiche en fait le numéro de ligne compté à partir de la première entrée.
➥ INDEX(D5:D13,MATCH(F5,C5:C13,1))
Et la fonction INDEX donnera les ventes correspondantes ( D5:D13) en fonction de la correspondance précédente dans le tableau ( C5:C13) qui retournera comme-
367
C'est en fait la dernière occurrence pour Cellule F5
Méthode 3 : Combinaison des fonctions INDEX, MAX, SUMPRODUCT et ROW pour trouver la dernière valeur dans une colonne
Maintenant, nous allons faire la tâche avec la combinaison de INDEX, MAX, SUMPRODUCT, et ROW fonctions. La fonction ROW trouvera les numéros de ligne. SUMPRODUCT est une fonction qui multiplie une plage de cellules ou de tableaux et renvoie la somme des produits. La fonction MAX trouvera le nombre maximum. Et le INDEX renvoie une valeur ou la référence à une valeur dans un tableau ou une plage.
Des pas :
➦ Permettre l'édition dans Cellule F7
➦ Copiez et collez la formule donnée ci-dessous :
=INDEX($C$5:$C$13,SUMPRODUCT(MAX(ROW($B$5:$B$13)*($E$7=$B$5:$B$13))-4)))
➦ Et appuyez sur le Entrez bouton.
👉 Comment fonctionne la formule ?
➥ ROW($B$5:$B$13)
La fonction ROW affichera le numéro de ligne pour le tableau qui retournera comme-
{5;6;7;8;9;10;11;12;13}
➥ ($E$7=$B$5:$B$13)
Ici Cellule E7 est notre valeur de recherche et cette formule va la faire correspondre au tableau B5:B13 Puis il reviendra comme...
{FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;TRUE}
➥ ROW($B$5:$B$13)*($E$7=$B$5:$B$13)
C'est la multiplication des deux formules précédentes qui va effectivement multiplier les numéros de ligne correspondants. FAUX signifie 0 et VRAI signifie 1 Donc, après la multiplication, il retournera comme...
{0;0;0;0;9;0;0;0;13}
➥ MAX(ROW($B$5:$B$13)*($E$7=$B$5:$B$13))
Le site MAX La fonction trouvera la valeur maximale du résultat précédent qui sera retourné en tant que
13
➥ SUMPRODUCT(MAX(ROW($B$5:$B$13)*($E$7=$B$5:$B$13))-4)
Maintenant, le SUMPRODUCT est utilisée pour trouver le numéro de ligne dans le tableau . Comme notre liste commence par le 5ème rangée et plus, 4 a été soustraite. Ainsi, la position de la dernière occurrence de Bill est 9 sur notre liste pour que la formule renvoie comme-
9 .
➥ INDEX($C$5:$C$13,SUMPRODUCT(MAX(ROW($B$5:$B$13)*($E$7=$B$5:$B$13))-4)))
L'INDEX La fonction est utilisée pour trouver les ventes pour le dernier nom correspondant. Et elle retournera comme...
563
C'est notre dernière apparition pour Bill.
Méthode 4 : Utiliser Excel VBA pour trouver la dernière occurrence d'une valeur dans une colonne
Si vous aimez coder dans Excel, alors cette méthode vous convient. Nous pouvons également effectuer l'opération précédente en utilisant la méthode VBA. Parcourons les étapes suivantes pour voir comment nous pouvons le faire facilement.
Pour cela, dans un premier temps, je vais créer une liste déroulante pour les noms uniques, puis je vais créer une nouvelle fonction définie par l'utilisateur, la " LastItemLookup " en utilisant VBA que nous utiliserons pour trouver la dernière occurrence.
Étape 1 :
➦ Tout d'abord, copiez les noms uniques de la feuille principale vers une nouvelle feuille.
Étape 2 :
➦ Puis allez dans la feuille principale. Activez n'importe quelle nouvelle cellule. J'ai choisi E5.
➦ Click Données> ; Outils de données> ; Validation des données.
A boîte de dialogue apparaîtra.
Étape 3 :
➦ Sélectionner Liste de la Autoriser bar.
➦ Puis appuyez sur la touche Ouvrir le site de l'icône Source : bar.
Étape 4 :
➦ Après cela, allez dans votre nouvelle feuille et sélectionnez les noms uniques.
➦ Presse OK
Voir un flèche vers le bas est affiché sur le côté droit de la cellule. En cliquant ici, vous pouvez sélectionner n'importe quel nom. Cela nous fera gagner du temps car nous n'aurons pas à taper les noms à chaque fois.
Maintenant, nous allons créer une nouvelle fonction nommée LastItemLookup avec Excel VBA.
Étape 5 :
➦ R ight-click votre souris sur le nom de la feuille.
➦ Sélectionner Afficher le code de la menu contextuel .
A VBA s'ouvrira.
Étape 6 :
➦ Tapez les codes donnés ci-dessous :
Option Explicit Sub vlookup_last() End Sub Function LastItemLookup(Lookupvalue As String, LookupRange As Range, ColumnNumber As Integer) Dim x As Long For x = LookupRange.Columns(1).Cells.Count To 1 Step -1 If Lookupvalue = LookupRange.Cells(x, 1) Then LastItemLookup = LookupRange.Cells(x, ColumnNumber) Exit Function End If Next x End Function
Étape 7 :
➦ Puis appuyez sur le bouton de lecture pour exécuter les codes. A boîte de dialogue nommé Macros apparaîtra.
➦ Click Exécuter .
Notre nouvelle fonction est prête maintenant.
Étape 8 :
➦ Retournez maintenant à votre feuille de travail.
➦ Activer Cellule F5
➦ Tapez la formule donnée ci-dessous avec la nouvelle fonction.
=LastItemLookup(E5,B5:C13,2)
➦ Presse Entrez pour obtenir le résultat de la dernière occurrence pour Ron .
Maintenant, lorsque vous choisirez le nom d'un vendeur, vous obtiendrez la valeur correspondante de sa dernière occurrence.
Conclusion
J'espère que toutes les méthodes décrites ci-dessus seront suffisantes pour vlookup la dernière valeur dans une colonne. N'hésitez pas à poser des questions dans la section des commentaires et s'il vous plaît donnez-moi des commentaires