Quand query s'applique directement à une feuille sans transformation/sans importrange, on utilise les lettres ("select A,B,C") dans ce cas, cela reste "figé". Quand on utilise une transformation ou importrange, on utilise un chiffre ("select Col1,Col2,Col3").
Comment faire dans chacun des cas ?
Le premier me semblait plus facile ... mais ce n'est pas forcément le cas !
In fine, dans le second cas, si on connaît par exemple les en-têtes de colonnes, on peut s'y raccrocher avec un EQUIV/MATCH pour y trouver le n° de la colonne et lui adjoindre le préfixe Col.
Concrètement, j'ai ceci
les noms de ville sont réels !
je veux les colonnes Nom/Prénom/Département, mais il est probable que j'ajoute des colonnes ou j'en change l'ordre !
alors j'écrirai (avec A:E entre crochets pour pouvoir utiliser la notation ColXX)
=QUERY({A:E},"select Col"& MATCH("Nom",1:1,0) &",Col"& MATCH("Prénom",1:1,0) &",Col"& MATCH("Département",1:1,0) &" where Col1 is not null ",1)
avec un importrange, il faudra en faire un premier pour importer juste les en-têtes et pouvoir déterminer le n° des colonnes concernées.
Pour simplifier ... les formules peuvent donc être longues, mais dans ce cas, le mieux est de construire un tableau en listant les en-têtes souhaitées (ici en G1:I1) avec comme formule
="Col"&MATCH(G1,1:1,0)
puis
=QUERY({A:E},"select "& join(",",G2:I2) &" where Col1 is not null ",1)