TOCOL関数

Excel 365, Excel 2021

概要

TOCOL関数は、指定された配列を単一の列に変換します。行または列の順序でスキャンし、空白やエラーを柔軟に除外可能で、動的配列操作を効率化します。

構文

=TOCOL(array, [ignore], [scan_by_column])

パラメータ

パラメータ タイプ 必須 説明
array Array/Range はい 列として返す配列または参照範囲です。
ignore Number いいえ 無視する値の種類を指定(0:すべて保持、1:空白無視、2:エラー無視、3:空白とエラー無視)。デフォルトは0。
scan_by_column Boolean いいえ 列優先スキャンか行優先かを指定(TRUE:列優先、FALSE:行優先)。デフォルトはFALSE。

TOCOL関数の使用

TOCOL関数は、表形式のデータを縦一列に変換する際に最適です。データ分析前の整形、ドロップダウンリスト作成、動的範囲生成などに活用できます。ignoreパラメータで不要なデータを自動除去し、scan_by_columnで読み取り順序を制御します。

TOCOLの一般的な例

基本的な行優先スキャン

=TOCOL(A2:D4)

範囲A2:D4のデータを上から順に1列に変換します。12行の結果が返されます。

空白を無視した変換

=TOCOL(A2:D4,1)

範囲内の空白セルをスキップして列を作成します。データのみが抽出されます。

列優先スキャン

=TOCOL(A2:D4,1,TRUE)

列ごとに縦に読んで1列に変換。縦長データの横展開時に便利です。

エラーを無視

=TOCOL(A2:D5,2)

エラー値を含む範囲からエラーを除外して正常データのみ抽出します。

よくある質問

TOCOLは縦一列に、TOROWは横一行に変換します。用途に応じて使い分けます。

デフォルトでは空白も含めますが、ignore=1または3で無視できます。

Excel 365およびExcel 2021以降の動的配列対応版でのみ使用可能です。

一般的なエラーと解決策

#VALUE! エラー

Cause: ignore引数に0-3以外の値を指定、またはarray引数が不正

Solution: ignore引数は0,1,2,3のみ使用し、arrayは正しい範囲を指定してください。

#NUM! エラー

Cause: 配列がExcelの最大サイズを超過

Solution: 範囲を小さくするか、データを分割して処理してください。

注記

  • Excel 365、Excel 2021で利用可能
  • 最大1,048,576行までの結果を返却可能
  • 他の動的配列関数(TAKE、DROP、TOROW)と組み合わせが強力
  • 日本語環境でも英語記号で入力
  • 動的配列エリアに自動展開されます

互換性

利用可能: Excel 365, Excel 2021

利用不可: Excel 2019, Excel 2016, Excel 2013, Excel 2010, Excel 2007, Excel 2003以前

コンテンツ最終レビュー: December 9, 2025
更新頻度: 必要に応じて
テスト済みExcelバージョン: Excel 365, Excel 2021