FLATTEN関数 Googleスプレッドシート独自関数で複数行や列の範囲を1列のリストに変換する

スポンサーリンク
スポンサーリンク

FLATTEN関数について

FLATTENの概要

範囲内のデータを1列にまとめるGoogleスプレッドシート関数

=FLATTEN( 範囲または値 )

概要 FLATTEN関数は、指定した範囲や配列を縦方向に並べた1列のデータに変換します。ただし、範囲内のデータは列ごとに順番に処理されます。

  • 複数の行や列にまたがるデータを1つの列にまとめることができます。
  • 配列やセル範囲のデータを簡単に統合できます。
  • データの集計や操作の前処理として便利です。

FLATTENはどのような時に使用するか

  • データを縦方向にまとめたいとき。
  • 行列状のデータを1列に統合して扱いたいとき。
  • 配列から空白や重複データを整理したいとき(他の関数と組み合わせて使用)。

FLATTENの使い方

以下のtableを使ってFLATTEN関数の基本的な使い方を説明します。

  A B C
1 データ1 データ2 データ3
2 1 4 7
3 2 5 8
4 3 6 9

=FLATTEN(A2:C4) をD1セルなどに記入します。

結果

次のように、A2:C4の範囲が縦方向に1列にまとめられますが、列単位で順番に処理されます。

  • 1
  • 4
  • 7
  • 2
  • 5
  • 8
  • 3
  • 6
  • 9

FLATTENの応用例

FLATTEN関数を使用して、データをまとめた後に追加の処理を行う例を紹介します。

応用例1: 重複データの削除

FLATTEN関数とUNIQUE関数を組み合わせて、1列にまとめたデータから重複を削除する例です。

  A B C
1 データ1 データ2 データ3
2 1 1 3
3 2 4 3
4 3 4 5

=UNIQUE(FLATTEN(A2:C4))

結果

  • FLATTEN関数の結果は次のようになります: 1, 1, 3, 2, 4, 3, 3, 4, 5
  • UNIQUE関数によって重複が削除され、次の結果が得られます: 1, 3, 2, 4, 5

応用例2: 空白セルの削除

FLATTEN関数とFILTER関数を組み合わせて、1列にまとめたデータから空白セルを除去する例です。

=FILTER(FLATTEN(A2:C4), FLATTEN(A2:C4) <> “”)

  • 結果: 空白セルが取り除かれたデータが1列で返されます。

注意点

  • FLATTEN関数は、範囲内のすべての値を列単位で処理し1列にまとめます。
  • 空白セルも結果に含まれるため、空白セルを除去するには追加の処理が必要です。
  • 範囲外の値や無効な入力があるとエラーが発生することがあります。

まとめ

  • FLATTEN関数は、データ範囲を縦方向に1列にまとめる非常に便利な関数です。
  • 列単位で処理されるため、データの順序に注意してください。
  • 他の関数と組み合わせることで、データ整理や加工の効率を大幅に向上させます。