【スプレッドシート】縦一列に長いデータを複数列に変換する
こんてんつ
縦一列に並んだデータがあるとする。このデータを、指定行で折り返させ、複数列に変換するための方法を示す。
例題
次の図の様に、A列に長いデータが存在するとする。このデータを、4行おきにB列、C列、…のように横に移動させることを考える。
方法
B1列に次の様な関数を記入し、オートフィルで周りに広げればよい。4*(ROW()-1)+(COLUMN()-1)
の4
の部分を折り返したい行数に一致させることがポイント。
=INDEX($A:$A,4*(ROW()-1)+(COLUMN()-1),0)
解説
INDEXは、INDEX(参照, 行, 列)として、値を取得してこれる。4*(ROW()-1)+(COLUMN()-1)
におけるn=4
の部分で、記入している行のn
倍の行を取得して、(COLUMN()-1)
分足した行の値を取得してくる。
利用の用途
例えば、次の様な、氏名・年齢・住所の様に縦に並んだデータを、横に並べるときなどに有用である。