表にあるデータを一列したいのですが・・・。
簡単な関数なら理解できます。

  1   2   3 ・・・
A 11| 22| 33
B 44| 55| 66
C 77| 88| 99




となっているのを、

11
22
33
44
55
66
77
88
99





としたいんです。
出力先はエクセルでもワードでもメモ帳でもかまいません。
なるべく簡単に出来る方法はないでしょうか?
マクロは使わずに出来るとありがたいです。

このQ&Aに関連する最新のQ&A

A 回答 (5件)

シート2のA1に


=INDEX(Sheet1!A:C,INT((ROW(A1)-1)/3)+1,MOD(ROW(A1)-1,3)+1)
と入れてみると,あとは下向けにつるつるっとコピーしてやるだけです。
    • good
    • 0

エクセルで関数以外の方法は如何でしょうか。


仮に3列の並び替えとしますと、E1に#A1、E2に#B1、E3に#C1としてE1:E3を選択して下方向にコピー、コピー後にその範囲を置換で「#」を「=」に全て置換してみて下さい。
    • good
    • 0

簡単な関数ってどの程度だろう。



E1セル 3 下へ連番

F1:F3セル 1;2;3
下へコピー

G1セル =INDEX($A:$C,$E1/3,$F1)
下へオートフィル
「エクセル 表のデータを一列にしたい」の回答画像4
    • good
    • 0

もう答えは出ていますが


この問題は、算数的な問題なんです。
そのセルが上からの何番目かの行番号は式を入れたセルで=ROW()で取れます。
Row()番号の行に(上からROW()番目の行に)くるべき元データは、
何行目のデータかを考えると、row()/3行目の(元データが3列なので)データです。
正確には  I NT((ROW()-1)/3)+1です。
そして列的にはその行で左から MOD(ROW()-1,3)+1 番目です。
其れでOFFSET関数を使うとすると
OFFSET関数は起点A1からの隔たりを指定するので+1の「づらし」が要らなくなり
=OFFSET($A$1,INT((ROW()-1)/3),MOD(ROW()-1,3),1,1)
起点(A1セル)

INT((ROW()-1)/3),→MOD(ROW()-1,3(採ってくるセル)
↑           ↑
行ずらし数      列ずらし数
ーー
OFFSET関数はWEB照会して
http://officetanaka.net/excel/function/function/ …
など読んで勉強のこと。
    • good
    • 0

=OFFSET(Sheet1!A$1,(ROW(A1)-1)/3,MOD(ROW(A1)-1,3))

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング

おすすめ情報