質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Google スプレッドシート

Google スプレッドシートは、フリーで利用できる表計算ソフト。Webアプリのためインターネットに接続することで利用できます。チャートやグラフの作成のほか、シートを他のユーザーと共有したり、同時に作業を進めることも可能です。

Q&A

解決済

1回答

1937閲覧

スプレッドシート クエリ関数の並び替え

e435t5f3ew

総合スコア1

Google スプレッドシート

Google スプレッドシートは、フリーで利用できる表計算ソフト。Webアプリのためインターネットに接続することで利用できます。チャートやグラフの作成のほか、シートを他のユーザーと共有したり、同時に作業を進めることも可能です。

0グッド

1クリップ

投稿2021/01/31 23:24

編集2021/02/01 03:13

googleスプレッドシートのクエリ関数の並び替え

クエリ関数を複数つなげて表示をしているのですが、複数のクエリの連結後に並び替えを行いたいです。

発生している問題

関数を認識していないので表示されない

該当のソースコード

≪A≫
=Query({QUERY('あ!A2:Z,"select A,B,C,D");
QUERY('い'!A2:Z,"select A,B,C,D,N");
QUERY('う'!A2:AR,"select A,B,C,D,H")},"Where Col2 = 'お' and order by H asc")

≪B≫
=Query({QUERY('あ!A2:Z,"select A,B,C,D");
QUERY('い'!A2:Z,"select A,B,C,D,N");
QUERY('う'!A2:AR,"select A,B,C,D,H")},"where Col1 is not null and order by H asc")

試したこと

上記のように表記を変えて行ってみたり、シートを別に作って
シートCで集計したものをシートDで並び替えのみを行うことを試してみましたが反応しませんでした。
できれば余分なシートを作成せずに対応したいです。

エラー表示

#VALUE
と表示され、

関数 QUERY のパラメータ 2 のクエリ文字列を解析できません: PARSE_ERROR: Encountered " "order" "order "" at line 1, column 28. Was expecting one of: "true" ... "false" ... "not" ... "date" ... "timeofday" ... "datetime" ... "timestamp" ... "min" ... "max" ... "avg" ... "count" ... "sum" ... "no_values" ... "no_format" ... "is" ... "null" ... "year" ... "month" ... "day" ... "hour" ... "minute" ... "second" ... "millisecond" ... "with" ... "contains" ... "starts" ... "ends" ... "matches" ... "like" ... "now" ... "dateDiff" ... "quarter" ... "lower" ... "upper" ... "dayOfWeek" ... "toDate" ... <ID> ... <INTEGER_LITERAL> ... <DECIMAL_LITERAL> ... <STRING_LITERAL> ... <QUOTED_ID> ... "(" ... "-" ...

と表示されます。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sawa

2021/02/01 00:28

いろいろ記述が違ってる箇所がありますが、とりあえず括弧の数が揃ってないので、そこは正しく書いた方がよいです。このままだと関数入らないはずです。 あと「反応しませんでした」と書かれてますが、なんらかのエラーが出ているのではないでしょうか?それも記載することをお勧めします。
e435t5f3ew

2021/02/01 04:38 編集

連絡ありがとうございます。 若干内容の誤りがありましたので、訂正しました。 再度、ご教示いただきたくよろしくお願いいたします。
guest

回答1

0

ベストアンサー

掲載いただいたエラーメッセージを確認しました。

このエラーが出るということは、たぶん本番で使ってる関数は合ってると思いますが、
質問に掲載している関数だと "あ"のシートだけselectが4つで列数が揃ってません。
これだと結合部分がエラーになります。

その上で、≪A≫の方の式をベースにすると、以下の2点を修正してみてください。

  • 結合した範囲を参照する場合は、その後の列指定は Col1,Col2...といった記述で統一する
  • 並び替えの order by は Where の条件句 じゃないので、and は不要

投稿2021/02/01 03:58

sawa

総合スコア3002

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

e435t5f3ew

2021/02/01 04:56

エラーはなくなり表示されるようになりました。 ありがとうございました。 ただ、並べ替えがうまくいくものといかないものがあります。 対策ありましたら教えて頂けると幸いです。 よろしくお願いいたします。
sawa

2021/02/01 05:40 編集

>並べ替えがうまくいかない 修正後の実際の式も対象の列のデータを見ないとなんとも言えません。エラーが出ないなら式は間違ってないと思いますが。。 よくあるのは、数値が文字列になっているとか、数値と文字列が混在しているというパターンです。
e435t5f3ew

2021/02/01 22:50

結合前の状態で並べ替えられて結合しています。 カテゴリ(シート)/数字 A/1 A/5 B/3 B/6 B/8 C/2 C/4 C/7 C/9 このような感じに表示されます。 数字優先で並べ替えしたいのですが、 シート別で先に並べ替えられた後、数字で昇順しまいます。
sawa

2021/02/02 00:17

もう少しリアルデータ、最終的な式を開示しないと原因はわからないです。 元のシートの並び順のまま結合された感じであれば、式の order by ~の部分の記述に誤りがあるのかもしれません。 どちらにせよ、既に本件の質問内容からはズレてきてますので、コメント欄でのやりとりは一旦終了させていただきます。 式を見直していただき、解決しないようでしたら具体的な情報を掲載して再質問してみてください。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問