share facebook facebook facebook twitter twitter menu hatena pocket slack

2021.05.10 MON

SpreadSheet: 2つの配列をクロス結合する

松本 勝年

WRITTEN BY 松本 勝年

Google SpreadSheet で2つの配列をクロス結合したい場合があります。
例えば、メンバー各々に決まった属性を割り当てた表を作る場合に、メンバー追加時に属性行も追加する作業は非常に面倒です。
メンバーを追加する時は、メンバー一覧にメンバーの名前だけ追加すれば、あとは各属性行も追加されるようにできれば楽になります。

公式のドキュメントに方法が載っていたのですが、初見だと理解ができなかったので、式の要素を分解して理解してみました。
要素ごとに記事を書いています。

やってみる

公式の手法にしたがってやってみます。
Filter 関数を使用して、空の値をスキップさせます。

=arrayformula(split(flatten(filter(W2:W,not(isblank(W2:W)))&"|"&transpose(filter(X2:X,not(isblank(X2:X))))),"|"))

メンバーと属性の一覧を作成します。
(上式のW列がメンバー列、X列が属性列)

メンバーと属性のクロス結合した一覧が作成されました。

メンバーを追加してみます。

追加したメンバーの各属性が追加されました。

元記事はこちら

SpreadSheet: 2つの配列をクロス結合する

松本 勝年

松本 勝年

フロントエンドに興味があるエンジニア

cloudpack

cloudpackは、Amazon EC2やAmazon S3をはじめとするAWSの各種プロダクトを利用する際の、導入・設計から運用保守を含んだフルマネージドのサービスを提供し、バックアップや24時間365日の監視/障害対応、技術的な問い合わせに対するサポートなどを行っております。
AWS上のインフラ構築およびAWSを活用したシステム開発など、案件のご相談はcloudpack.jpよりご連絡ください。