Aide conversion formules Google Sheet vers Excel

Talimbie

XLDnaute Nouveau
Bonjour à tous,

j'ai besoin d'un peu d'aide pour convertir mes fonctions sheet vers Excel suite à une migration d'application.

Pour faire simple, j'ai un premier onglet qui regroupe les résultats d'un formulaire dans lequel je souhaite faire des requêtes.
Chez google, je faisais ça :
=query('nom de l'onglet dans lequel je fais mes requêtes'!A2:AN350; "select C,B where K contains """&A3""" order by A")

je fais donc une requête dans le premier onglet sur tout le tableau. De là, je n'affiche que 2 colonnes C et B et uniquement si la valeur dans la colonne K contient un mot clé (contenu dans A3 dans mon onglet actuel) puis j'ordonne mon résultat en fonction de l'apparition de l'apparition dans la colonne A.

Pourriez vous m'aider à traduire cette formule en langage Excel SVP

Merci d'avance pour votre aide.
 

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

voici un exemple par une macro reproduisant le filtrage avancé d'excel.

MAIS , je crois qu'avec excel 365 vous avez accès à une fonction nommer FILTRE et que je ne peux utiliser avec excel 2019 et inférieur.

Normalement c'est au demandeur de créer l'exemple.

cordialement
 

Pièces jointes

  • Extraction.xlsm
    103.1 KB · Affichages: 10

Talimbie

XLDnaute Nouveau
Bonjour,

merci pour votre retour. Si c'est à moi de mettre l'exemple, le voici en pièce jointe.
Feuil1 : les résultats
Feuil2 : Compléter les tableaux en faisant une requête sur la feuille 1

Ce sont ces requêtes que je n'arrive pas à refaire alors qu'elles ne m'avaient posé aucun problème sous google sheet :(

Merci pour votre aide
 

Pièces jointes

  • test.xlsx
    10.7 KB · Affichages: 4

job75

XLDnaute Barbatruc
Bonjour Talimbie, Roblochon,

Voyez le fichier joint, dans Feuil2 formule matricielle en B4 :
Code:
=SIERREUR(INDEX(Feuil1!$B:$B;PETITE.VALEUR(SI(Tableau1[Planète]=A$2;LIGNE(Tableau1));LIGNES(B$4:B4)));"")
Formule matricielle en C4 :
Code:
=SIERREUR(INDEX(Feuil1!$C:$C;PETITE.VALEUR(SI(Tableau1[Planète]=A$2;LIGNE(Tableau1));LIGNES(C$4:C4)));"")
A propager vers le bas et sur les 2 autres tableaux.

A+
 

Pièces jointes

  • test(1).xlsx
    15.1 KB · Affichages: 6

Talimbie

XLDnaute Nouveau
Bonjour Talimbie, Roblochon,

Voyez le fichier joint, dans Feuil2 formule matricielle en B4 :
Code:
=SIERREUR(INDEX(Feuil1!$B:$B;PETITE.VALEUR(SI(Tableau1[Planète]=A$2;LIGNE(Tableau1));LIGNES(B$4:B4)));"")
Formule matricielle en C4 :
Code:
=SIERREUR(INDEX(Feuil1!$C:$C;PETITE.VALEUR(SI(Tableau1[Planète]=A$2;LIGNE(Tableau1));LIGNES(C$4:C4)));"")
A propager vers le bas et sur les 2 autres tableaux.

A+


Merci Job75, c'est beaucoup moins instinctif que sheet quand même... Je vais avoir du boulot pour écrire adapter toutes mes requêtes. Si tu souhaites ordonner par ordre d'horodatage, tu peux ajouter un order by A?
En plus, tu es obligé de traiter toutes les cases, tu ne peux pas rentrer plusieurs données une fois que tu as trouvé ta ligne?
 

Discussions similaires

  • Question
Microsoft 365 VBA -> Sheet
Réponses
0
Affichages
602

Statistiques des forums

Discussions
315 094
Messages
2 116 156
Membres
112 672
dernier inscrit
djudju