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

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

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

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

Q&A

1回答

645閲覧

スプレッドシート ARRAYFORMULAでの一括QUERY、さらに文字連結

cali

総合スコア4

Google スプレッドシート

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

0グッド

0クリップ

投稿2021/05/19 04:36

環境

スプレッドシート

以下2テーブル

品番型番Color
A123-RA123R
A123-WA123W
A123-BA123B
A124-RA124R
A245-WA245W
A245-BA245B
...

マスター

型番種類
A123=join(",",QUERY('色'!B2:C,"Select C Where B ='"&$A2&"'")
B124R
C245W,B
...

やりたいこと

色テーブルとマスターテーブルの2種類のテーブル構成です。
現在、マスターテーブルのB2の数式をオートフィルでB2以降に適応してB3,B4のような指定文字で区切られた形で取得しています。

型番、Color共に可変で数量もバラバラのため、どこかで変更があると全て(5万行ほど)再計算されるため苦しいです。

ARRAYFORMULAなどで一括で取得しようと
=ARRAYFORMULA(join(",",QUERY('色'!B2:C,"Select C Where B ='"&A2:A&"'"))
でやってみたのですがA2:Aの部分に配列が渡せていないみたいで一括で取得してくれません。

何か改善案、代替案等ありましたらご教授いただけると幸いです。
可能であれば新たな参照用のテーブルやセルを追加することなく実現したいです。
よろしくお願いします。

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

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

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

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

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

sawa

2021/05/20 01:49

集約したマスタのテーブルで5万行ですか?結構大きいですね。元データとなる色の方はどれくらいの行数でしょうか?
cali

2021/05/20 03:04 編集

ありがとうございます。 色テーブルは40万くらいです。 中には色を持たないもの(現時点で色の区別がないもの)、50色ほどあるものと差が大きいのでベストな管理方法がわからずいます。(大半は2か3です) とりあえずこちらで回答がつかないので参照用のテーブルを新たに作って対応しようかなと考えておりました。 常に500万セル制限に怯えながらですが。。。非常に不格好で情けないです。
guest

回答1

0

40万行くらいのデータとのことで、Googleスプレッドシートの関数で処理するにはなかなか厳しそうですね。
とくに

さらに文字連結

この部分が厳しいです。
行毎に結合するような関数が無いので、ARRAYFORMULAと組み合わせは難しそうです。

回答の手前段階ですが、QueryとARRAYFORMULAを組み合わせた以下の式、今の色シートのリスト形式をマトリックス表示にスムーズに変換できるかを、作業用シートを追加して試していただけますか?

=ARRAYFORMULA(IF(QUERY('色'!B1:C,"select B,count(B) where B is not null group by B pivot C",1)="",,IF(ISNUMBER(QUERY('色'!B1:C,"select B,count(B) where B is not null group by B pivot C",1)),INDEX(QUERY('色'!B1:C,"select B,count(B) where B is not null group by B pivot C",1),1),QUERY('色'!B1:C,"select B,count(B) where B is not null group by B pivot C",1))))

投稿2021/05/20 05:02

sawa

総合スコア3002

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問