クイックナビゲーション
TOCOL関数
概要
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