QUERY et IMPORTRANGE

Y compris Google Docs, Slides et toute autre question en lien avec une application Google
Avatar du membre
Sébastien
Administrateur
Administrateur
Messages : 2'154
Appréciations reçues : 351
Inscrit le : 4 décembre 2004
Version d'Excel : 2016 FR
Version de Sheets : FR
Contact :
Téléchargements : Mes applications

Message par Sébastien » 1 décembre 2019, 17:30

Plutôt quelque chose comme ça (non testé) :
=QUERY({IMPORTRANGE("https://docs.google.com/spreadsheets/…";"A1:AG1000")\ARRAYFORMULA(SUBSTITUE(SUBSTITUE(IMPORTRANGE("https://docs.google.com/spreadsheets/…";"A1:F1000");"è";"e");"é";"e"))};"select Col1, Col2, Col3, Col4, Col5, Col6 where lower(Col34) CONTAINS '"&A2&"' or lower(Col39) CONTAINS '"&A2&"' ORDER BY Col1, Col2";0)

Si ça ne fonctionne pas, isole le premier argument de QUERY (le tableau entre accolades) pour voir s'il s'affiche correctement avant de chercher une erreur dans la requête.

Si je le fais avec mon dernier exemple, cela donne :
={A1:B9\ARRAYFORMULA(SUBSTITUE(SUBSTITUE(A1:A9;"è";"e");"é";"e"))}
query-tableau.png
query-tableau.png (16.05 Kio) Vu 693 fois
Sébastien
b
bmayeux
Nouveau venu
Nouveau venu
Messages : 9
Appréciation reçue : 1
Inscrit le : 25 novembre 2019

Message par bmayeux » 2 décembre 2019, 10:30

Bonjour,

Effectivement, ça fonctionne parfaitement si la requête est en minuscule sans accent (c'est pas mal).
Mais je rencontre un problème si j'augmente la plage de référence.
avec une plage de 10 000 lignes sur 13 colonnes, ça fonctionne,
avec une plage de 15 000 lignes sur 13 colonnes, ça provoque une erreur sur la recherche en Col3 :
Impossible d'analyser la chaîne de requête pour Le paramètre 2 de la fonction QUERY : NO_COLUMN: Col3.

Il ne parle pas de problème de volume du fichier importé.

Le tableau de référence fait actuellement 30 000 lignes sur 13 colonnes et il va passer à 50 000 lignes.
Je crois que je ferai mieux de résoudre mon problème avec un système de base de données.
Qu'en penses-tu ?

Merci et cordialement
bmayeux

=QUERY({IMPORTRANGE("https://docs.google.com/…=2078487008";"A1:M10000")\ARRAYFORMULA(SUBSTITUTE(SUBSTITUTE(IMPORTRANGE("https://docs.google.com/…=2078487008";"A1:E10000");"è";"e");"é";"e"))};"select * where lower(Col2) CONTAINS '"&A2&"' or lower(Col3) CONTAINS '"&A2&"' ORDER BY Col2, Col1";0)
Avatar du membre
Sébastien
Administrateur
Administrateur
Messages : 2'154
Appréciations reçues : 351
Inscrit le : 4 décembre 2004
Version d'Excel : 2016 FR
Version de Sheets : FR
Contact :
Téléchargements : Mes applications

Message par Sébastien » 2 décembre 2019, 13:01

avec une plage de 15 000 lignes sur 13 colonnes, ça provoque une erreur sur la recherche en Col3 :
Essaie d'isoler le tableau de données pour voir s'il s'affiche correctement :??
bmayeux a écrit :
2 décembre 2019, 10:30
Je crois que je ferai mieux de résoudre mon problème avec un système de base de données.
Qu'en penses-tu ?
Oui, si tu le peux, c'est mieux de travailler avec une vrai base de données :oui:

Cordialement,
Sébastien
b
bmayeux
Nouveau venu
Nouveau venu
Messages : 9
Appréciation reçue : 1
Inscrit le : 25 novembre 2019

Message par bmayeux » 2 décembre 2019, 14:08

Sébastien a écrit :
2 décembre 2019, 13:01
Oui, si tu le peux, c'est mieux de travailler avec une vrai base de données :oui:
Il y a des extension Base de données pour Google Drive ?

Cordialement
Avatar du membre
Sébastien
Administrateur
Administrateur
Messages : 2'154
Appréciations reçues : 351
Inscrit le : 4 décembre 2004
Version d'Excel : 2016 FR
Version de Sheets : FR
Contact :
Téléchargements : Mes applications

Message par Sébastien » 2 décembre 2019, 15:50

bmayeux a écrit :
2 décembre 2019, 14:08
Il y a des extension Base de données pour Google Drive ?
Je ne peux pas te répondre, je n'ai pas encore eu l'occasion de m'y intéresser.
Sébastien
b
bmayeux
Nouveau venu
Nouveau venu
Messages : 9
Appréciation reçue : 1
Inscrit le : 25 novembre 2019

Message par bmayeux » 2 décembre 2019, 15:54

Merci
Cordialement
bmayeux
Répondre
  • Sujets similaires
    Réponses
    Vues
    Dernier message