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

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

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

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

データ構造

データ構造とは、データの集まりをコンピュータの中で効果的に扱うために、一定の形式に系統立てて格納する形式を指します。(配列/連想配列/木構造など)

関数

関数(ファンクション・メソッド・サブルーチンとも呼ばれる)は、はプログラムのコードの一部であり、ある特定のタスクを処理するように設計されたものです。

文字コード

文字コードとは、文字や記号をコンピュータ上で使用するために用いられるバイト表現を指します。

Google

Googleは、アメリカ合衆国に位置する、インターネット関連のサービスや製品を提供している企業です。検索エンジンからアプリケーションの提供まで、多岐にわたるサービスを提供しています。

Q&A

解決済

1回答

873閲覧

スプレッドシートのQUERY関数を使い、違う条件のデータ同士を組み合わせて一つの式を作るには?

takoyaki87

総合スコア19

Google スプレッドシート

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

データ構造

データ構造とは、データの集まりをコンピュータの中で効果的に扱うために、一定の形式に系統立てて格納する形式を指します。(配列/連想配列/木構造など)

関数

関数(ファンクション・メソッド・サブルーチンとも呼ばれる)は、はプログラムのコードの一部であり、ある特定のタスクを処理するように設計されたものです。

文字コード

文字コードとは、文字や記号をコンピュータ上で使用するために用いられるバイト表現を指します。

Google

Googleは、アメリカ合衆国に位置する、インターネット関連のサービスや製品を提供している企業です。検索エンジンからアプリケーションの提供まで、多岐にわたるサービスを提供しています。

0グッド

0クリップ

投稿2020/04/21 01:45

「スプレッドシートのQUERY関数を使い、違う条件のデータ同士を組み合わせて一つの式を作る方法」について質問させていただきたいです。

以下の表

イメージ説明

■表のコードはこちら (コード①) ↓↓

=query('シート1'!A:O,"select year(G),month(G)+1,count(C),sum(L) WHERE C contains '革' group by year(G),month(G)+1 label year(G) '年',month(G)+1 '月',count(C) '革・販売個数',sum(L) '革・粗利'",TRUE)

___________

この表のすぐ右に付け足すイメージで、F列に以下のデータを加えたいです。

イメージ説明

■コードはこちら (コード②) ↓↓
=query('シート1'!A:O,"select (K) where A = 1",TRUE)

ーーーーーーーー

一つ目の表の「革・販売個数」「革・粗利」のデータはQUERY関数の同じ条件内でのデータのため、「革・販売個数」のコードに「革・粗利」のコード( sum L )を付け足すだけで (コード①) が作れました。

ですが、 (コード②) は違う条件内でのコードのため、単にそのまま (コード①) に加えるのではエラーとなってしまいます。

違う条件同士のコードを組み合わせて一つの式を作る、正しいコードの書き方を知りたいです。

ーーーーーーーー

■■■試したこと■■■

一つ目の表のすぐ右に二つ目の表をくっつけ、違う条件のコード同士を1つの式にまとめるイメージで、

=query('シート1'!A:O,"select year(G),month(G)+1,count(C),sum(L) WHERE C contains '革' group by year(G),month(G)+1, select (K) where A = 1 label year(G) '年',month(G)+1 '月',count(C) '革・販売個数',sum(L) '革・粗利'",TRUE)

というコードにしてみました。

ですがこれですとエラーとなり、「関数 QUERY のパラメータ 2 のクエリ文字列を解析できません」というメッセージが出てしまいます。
単純な書き方の問題なのか、そもそも違う条件同士のコードはQUERY関数で扱うことはできないのか調べておりますが、これについてぜひアドバイスを頂けたらと思います。

よろしくお願いします。

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

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

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

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

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

guest

回答1

0

ベストアンサー

違う条件同士のコードはQUERY関数で扱うことはできないのか → できません。
それぞれのセルに式を入れてあげてください。

もしくは、どーしても一つのセルに式を入れて処理したいなら 式を配列で書く方法はあります。

={Query(①),Query(②)} と中カッコでくくり , で区切った式にすると 単純に横結合となります。
ただしサイズ(返ってくる行数)が一致してないとエラーになります。

投稿2020/04/21 09:27

sawa

総合スコア3002

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

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

takoyaki87

2020/04/21 09:46

コメントありがとうございます。 それでは、別々に式を作って表を作成しようと思います。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.37%

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

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

質問する

関連した質問