TOCOL関数・TOROW関数の使い方|範囲を1列・1行に並べ直す・空白を除く

TOCOL関数・TOROW関数の使い方|範囲を1列・1行に並べ直す・空白を除く

エクセルで、複数の行・列にまたがる範囲を1列(または1行)に並べ直すには TOCOL関数・TOROW関数を使います。2行3列の当番表なら、=TOCOL(A3:C4,1) で 山田・佐藤・鈴木・高橋・田中 が縦1列に並びます。

結果は複数のセルに広がる(スピルする)ので、式は1つのセルに入れるだけです。この記事では、TOCOL関数・TOROW関数の基本、空白セルの扱い、読み取る順番(行の順・列の順)、ほかの関数との組み合わせまでを、1つの表で説明します。下の練習ツールで、当番表を書き換えて結果の変わり方を試せます。

目次

TOCOL関数・TOROW関数の書き方

TOCOL関数の構文
数式=TOCOL(配列,[無視する値],[列ごとにスキャン])
ひとことで範囲を1列に並べる
配列
並べる範囲です
[無視する値]
無視する値です(1 は空白を無視)(省略できます)
[列ごとにスキャン]
TRUE にすると列ごとに読みます(省略できます)
TOROW関数の構文
数式=TOROW(配列,[無視する値],[列ごとにスキャン])
ひとことで範囲を1行に並べる
配列
並べる範囲です
[無視する値]
無視する値です(1 は空白を無視)(省略できます)
[列ごとにスキャン]
TRUE にすると列ごとに読みます(省略できます)
引数入れるものポイント
配列並べ直したい範囲複数の行・列でも指定できます。
無視する値(省略可)0〜30:すべて残す(省略時)、1:空白を除く、2:エラーを除く、3:空白とエラーを除く
列ごとにスキャン(省略可)FALSE(省略)または TRUEFALSE は行の順(横に読む)、TRUE は列の順(縦に読む)。

Microsoft 365 で使えます。

まず動かしてみよう|この記事のサンプルをその場で試せます

練習用ファイルをダウンロードしなくても、記事と同じデータ・同じセル番地のサンプルをここで動かせます。黄色いセルを書き換えると、結果がその場で変わります。各解説の最後にある「▶ この式を試す」を押すと、このツールの該当セルへ移動します。

TOCOL関数・TOROW関数の使い方|やりたいこと別の式

やりたいこと式(例)結果
縦1列にする=TOCOL(A3:C4)山田・佐藤・鈴木・高橋・0・田中
空白を除いて縦1列=TOCOL(A3:C4,1)山田・佐藤・鈴木・高橋・田中
列の順に読む=TOCOL(A3:C4,1,TRUE)山田・高橋・佐藤・鈴木・田中
人数を数える=COUNTA(TOCOL(A3:C4,1))5
横1行にする=TOROW(A3:C4,1)山田・佐藤・鈴木・高橋・田中(横)
エクセルのTOCOL関数とTOROW関数で当番表を1列・1行に並べ直した表
エクセルのTOCOL関数とTOROW関数で当番表を1列・1行に並べ直した表

範囲を縦1列にする(TOCOL)

1
結果を出したい先頭のセル(E3)を選びます。
2
「=TOCOL(」と入力し、当番表の範囲(A3:C4)をドラッグします。
3
「)」と入力して Enter キーを押します。
TOCOL関数の式
数式=TOCOL(A3:C4)
ひとことで範囲を1列に並べる
A3:C4
並べる範囲です

E3 から下に、1行目の 山田・佐藤・鈴木、2行目の 高橋・(空白)・田中 の順で並びます。空白のセル(火曜の2行目)は 0 と表示されます。

空白を除く

TOCOL関数の式
数式=TOCOL(A3:C4,1)
ひとことで範囲を1列に並べる
A3:C4
並べる範囲です
1
無視する値です(1 は空白を無視)

2つ目の引数に 1 を指定すると空白が除かれ、山田・佐藤・鈴木・高橋・田中 の5人になります。名簿を作るときは、ふつうこの形を使います。人数は =COUNTA(TOCOL(A3:C4,1)) で 5 です(COUNT関数・COUNTA関数の使い方)。

列の順に読む

TOCOL関数の式
数式=TOCOL(A3:C4,1,TRUE)
ひとことで範囲を1列に並べる
A3:C4
並べる範囲です
1
無視する値です(1 は空白を無視)
TRUE
TRUE にすると列ごとに読みます

3つ目の引数に TRUE を指定すると、列ごと(月→火→水の順に縦)に読み取り、山田・高橋・佐藤・鈴木・田中 になります。曜日ごとにまとめて並べたいときに使います。

横1行にする(TOROW)

TOROW関数の式
数式=TOROW(A3:C4,1)
ひとことで範囲を1行に並べる
A3:C4
並べる範囲です
1
無視する値です(1 は空白を無視)

TOROW関数は同じ考え方で横1行に並べます。A11 から右に 山田・佐藤・鈴木・高橋・田中 が並びます。

TOCOL関数・TOROW関数がうまくいかないときの確認表

症状考えられる原因対処
「#SPILL!」になる結果が広がる先のセルに値が入っている下(横)のセルを空ける。
0 が混ざる空白のセルが 0 として並んでいる2つ目の引数に 1 を指定する。
「#NAME?」になるMicrosoft 365 以外の ExcelINDEX関数などで並べ直す。
順番が思っていたのと違う行の順(横)に読んでいる3つ目の引数に TRUE を指定する。

TOCOL関数・TOROW関数のよくある質問

重複を除いて並べるには?

UNIQUE関数と組み合わせて =UNIQUE(TOCOL(A3:C4,1)) とします(UNIQUE関数の使い方)。

1列のデータを複数の列に折り返すには?

WRAPROWS関数・WRAPCOLS関数を使います(WRAPROWS関数・WRAPCOLS関数の使い方)。

あわせて読みたい:配列の関連記事

練習用ファイル:練習用Excelファイル(.xlsx・無料)

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

目次