Vlookup une date dans une colonne de timbre horodaté dans Google Sheets

Imaginez que vous avez une colonne de timbre horodaté dans une feuille Google Sheets et que vous souhaitez effectuer une recherche Vlookup sur une date spécifique dans cette colonne. C’est possible, mais il y a quelques choses importantes à savoir pour y parvenir.

La première chose importante

Pour effectuer une recherche Vlookup sur une date dans une colonne de timbre horodaté, il est nécessaire de convertir cette colonne de timbre horodaté en une colonne de dates uniquement. Cela est dû au fait que le timbre horodaté contient à la fois la date et l’heure de la journée. Nous souhaitons effectuer une recherche verticale (Vlookup) sur une date spécifique dans une colonne de timbre horodaté, pas sur un timbre horodaté dans une colonne de timbre horodaté.

Pour réaliser cela, il existe deux options. Nous pouvons utiliser la fonction INT ou la fonction toDate.

toDate

La fonction toDate est une fonction scalaire dans Query que nous pouvons utiliser comme partie de notre formule pour effectuer une recherche Vlookup sur une date dans une colonne de timbre horodaté dans Google Sheets.

J’ai déjà rédigé deux tutoriels sur l’utilisation de ces deux fonctions. Si vous avez du temps, je vous encourage à les consulter, mais ce n’est pas obligatoire pour comprendre ce tutoriel. Voici les liens vers ces tutoriels :

  • Comment extraire une date d’un timbre horodaté dans Google Sheets.
  • Comment utiliser la fonction scalaire toDate dans une requête Google Sheets.

La deuxième chose importante

Une fois que vous avez converti la colonne de timbre horodaté en une colonne de dates, il vous faut savoir comment utiliser cette colonne avec les autres colonnes dans le tableau en tant que plage de recherche Vlookup.

Prenons un exemple pour clarifier les choses. Supposons que vous ayez un tableau avec trois colonnes : Timbre horodaté, ID et Montant. Notre recherche Vlookup concerne une date. Nous devons donc convertir les valeurs de la première colonne de timbre horodaté en dates, puis les combiner avec les deux autres colonnes pour les utiliser en tant que plage de recherche dans Vlookup.

La syntaxe Vlookup est la suivante :

VLOOKUP(search_key, range, index, [is_sorted])

Selon cette syntaxe, pour effectuer une recherche Vlookup sur la date (search_key) dans une plage (range), la première colonne de la plage doit être une colonne de dates.

Comme vous le savez peut-être, Vlookup recherche la valeur de recherche (search_key) dans la première colonne (je vous expliquerai plus loin quoi faire si la colonne de timbre horodaté n’est pas la première colonne).

Dans notre cas, la première colonne est une colonne de timbre horodaté. Nous devons donc indiquer à Vlookup de considérer uniquement les dates dans cette colonne, pas les heures. Voici comment faire.

Comment effectuer une recherche Vlookup sur une date dans une colonne de timbre horodaté dans Google Sheets ?

Comme mentionné précédemment, nous avons deux options : INT et toDate. Je vais vous expliquer comment utiliser toDate en premier. Voici un exemple de données de base avec seulement trois colonnes, allant de la ligne A1 à la ligne C6.

TABLEAU #1 :

DateTime ID Montant

toDate avec Vlookup

Supposons que nous voulions effectuer une recherche Vlookup sur la date du 27/08/2020, qui se trouve dans la cellule E1.

Tout d’abord, nous allons modifier virtuellement le tableau à l’aide de la fonction Query, de manière à pouvoir utiliser cette expression en tant que plage de recherche dans Vlookup.

=query(A1:C6, "Select toDate(A), B, C", 1)

La formule ci-dessus est la plage à utiliser dans Vlookup. La formule convertit la première colonne du tableau de timbres horodatés en dates.

Remarquez l’utilisation de la fonction toDate dans la formule avec la colonne A. Les deux autres colonnes (B et C) restent inchangées.

Voici les formules Vlookup qui utilisent une date pour effectuer une recherche dans la colonne de timbre horodaté.

Pour obtenir une valeur de la deuxième colonne :

=VLOOKUP(E1, query(A1:C6, "Select toDate(A), B, C", 1), 2, 0)

Pour obtenir une valeur de la troisième colonne :

=VLOOKUP(E1, query(A1:C6, "Select toDate(A), B, C", 1), 3, 0)

Vous voulez obtenir les valeurs de la deuxième et de la troisième colonne avec une seule recherche Vlookup ? Essayez cela :

=ArrayFormula(VLOOKUP(E1, query(A1:C6, "Select toDate(A), B, C", 1), {2, 3}, 0))

Dans l’exemple ci-dessus, l’utilisation de ArrayFormula est nécessaire car nous souhaitons renvoyer deux valeurs à partir d’une recherche Vlookup non-array.

De cette manière, en utilisant Query comme plage (expression), nous pouvons résoudre le problème de la recherche Vlookup sur une date dans une colonne de timbre horodaté dans Google Sheets.

Remarque : Si vous souhaitez entrer manuellement la valeur de recherche, n’entrez pas « 27/08/2020 ». Utilisez plutôt la fonction DATE comme ceci :

=ArrayFormula(VLOOKUP(date(2020, 8, 27), query(A1:C6, "Select toDate(A), B, C", 1), {2, 3}, 0))

INT avec Vlookup

Il s’agit de l’option la plus populaire parmi les utilisateurs avancés de Google Sheets pour effectuer une recherche Vlookup sur une date dans une colonne de timbre horodaté.

Voyons comment utiliser la fonction INT pour formater la colonne de timbre horodaté.

Voici comment créer virtuellement la plage (expression) :

={int(A2:A6), B2:C6}

En utilisant INT, nous avons converti les timbres horodatés en dates, puis nous avons conservé les deux autres colonnes avec la colonne de timbre horodaté convertie en tableau à l’aide d’accolades.

Maintenant, lorsque nous utilisons cette plage avec Vlookup, veuillez noter que vous devez utiliser la fonction ArrayFormula, que la recherche Vlookup renvoie une valeur ou plusieurs valeurs.

Exemple :

=ArrayFormula(vlookup(E1, {int(A2:A6), B2:C6}, 2, 0))

La formule renverra « KL604000 » car c’est l’ID dans la deuxième colonne de la plage correspondant à la date dans la première colonne, c’est-à-dire le 27/08/2020.

Vlookup d’une date dans une colonne de timbre horodaté lorsque le timbre horodaté n’est pas la première colonne

Permettez-moi de réorganiser les colonnes du premier tableau ici pour déplacer la colonne de timbre horodaté. Ensuite, j’expliquerai comment utiliser le tableau réorganisé en tant que plage dans Vlookup.

Voici le tableau réorganisé :

TABLEAU #2 :

ID DateTime Montant

Ici, la colonne DateTime (timbre horodaté) est la deuxième colonne. Voici comment j’utilise la fonction toDate et la fonction INT pour créer la plage (expression) :

Range avec Query toDate :

query(A1:C6, "Select toDate(B), A, C", 1)

Range avec la formule INT :

{int(B2:B6), A2:A6, C2:C6}

Les formules Vlookup seront les mêmes que dans les exemples précédents correspondant à ces fonctions.

Voilà tout ce que vous devez savoir sur la recherche Vlookup d’une date dans une colonne de timbre horodaté dans Google Sheets.

Merci de votre attention. Profitez-en bien !

Pour des astuces supplémentaires et des tutoriels, consultez Crawlan.com.

Articles en lien