J'ai une requête qui doit être exécutée pour chaque ligne d'une liste. Cela fonctionne bien lorsqu'il est écrit pour une seule ligne:
QUERY(MaraRankData,
"select J,I,H,G,F,E where
A='"&E3&"' and
B='"&B3&"' and
C="&C3&" and
D="&D3&"",
0
)
Cela génère une ligne de données, comme vous le souhaitez. Mais quand je l'enveloppe dans ARRAYFORMULA, il ne sort qu'une seule ligne au lieu de plusieurs:
=ARRAYFORMULA(
QUERY(MaraRankData,
"select J,I,H,G,F,E where
A='"&E3:E&"' and
B='"&B3:B&"' and
C="&C3:C&" and
D="&D3:D&"",
0)
)
Google Sheets ne génère aucune erreur, je ne sais donc pas ce que je fais de mal. Comment puis-je faire fonctionner ARRAYFORMULA avec ma QUERY afin de ne pas avoir à répéter la formule sur chaque ligne?
google-sheets
formulas
Stobber
la source
la source
filter
, veuillez poster une réponse: je serais intéressé par une telle solution.=FILTER({E:E,F:F,G:G,H:H,I:I,J:J},A3:A=E3:E)
La première partie consiste simplement à réorganiser les colonnes entre crochets. La seconde est parce que A à E semble être la seule colonne qui importait car B se regarde, C se regarde, etc. En réalité, un ensemble de données serait bien, et peut-être plus d'explications sur le problème. Peut-être que je ne comprends tout simplement pas.Réponses:
La
arrayformula(query(...))
combinaison n'est pas prise en charge; il n'existe aucun concept dequery
traitement d'un tableau de tableaux ou d'exécution d'un tableau de chaînes de requête.Vous avez deux options: (a) répéter
query
à chaque ligne; (b) utiliservlookup
pour récupérer des colonnes de données, comme expliqué ci-dessous. Par exemple:prend un élément de E3: E à la fois, trouve cet élément dans la colonne A et récupère l'élément correspondant de la colonne J. Avec cette approche, vous auriez besoin de six vlookups distincts pour obtenir les colonnes J, I, H, G, F, E, mais vous n'aurez pas besoin d'une commande distincte pour chaque ligne.
Une complication est qu’elle
vlookup
n’accepte qu’une seule clé de recherche et que vous souhaitez effectuer une recherche sur 4 paramètres,Cela peut être contourné en les concaténant en une seule clé de recherche: vous pouvez avoir une colonne comme Z,
qui concatène quatre paramètres de recherche en une seule clé de recherche délimitée par des tuyaux. Faites de même pour la table à rechercher, puis comparez ces clés à l'aide de
vlookup
.la source