いつもお世話になっています。
エクセルのコピーについて質問します。
ある一覧表の中の一定間隔(例えば9列毎にある)にある項目を
別の表に一列毎にコピーしたい場合に、簡単に出来る方法があれば教えてください。
よろしくお願いします。

A 回答 (2件)

ん?


9列ごとにあるデータを隣り合わせて表示(コピー)したいと言うのですか

普通に9列ごとに「列を選択」してコピーした後に貼り付ければ良いと思うんですけど、
それではダメなんでしょうか
Ctrlキーを押しながら列を選択すれば、隣り合っていない範囲でも選択できます


関数を使いたいなら、OFFSET関数や COLUMNS関数を使って
 =OFFSET($A1,0,COLUMNS(A1)*9-1)
などの数式を作ってみてはいかがでしょう

この関数式では、I,R,AA…の行をコピーします
"-1"の部分を変えるだけで選択する列を変えられます
 例:"-2" で H,Q,Z…列
参照先が空白のセルであると "0" が返ってきますから、必要なら IF関数を使って処理をしたりしてください
(めんどうでしょう?だから普通にコピーすることを冒頭に…)
    • good
    • 0
この回答へのお礼

早速のご回答ありがとうございました。
コピー元がその都度変わりますので、OFFSET関数で解決しました。
ありがとうございました。

お礼日時:2009/05/27 14:30

コピーしたい列の数にもよりますが、


それほど多くないなら、回答1の「普通に9列ごとに「列を選択」してコピー」の方法が早いと思います。

多いようなら、私も OFFSET でコピーすると思いますが、
空白セルの問題があるので、別解。

1.まず処理対象を丸ごとコピーし、「形式を指定して貼り付け」で「行列を入れ替え」にチェックを入れて貼り付ける。(ただし、1行目は空行で空けておく)
2. 適当な空いてる列に、「=MOD(ROW(),9)」という数式を入れ、その列の全ての行にコピー(これで、この列は、9行おきに同じ数字が入る
3. オートフィルタを有効にする
4. 上記の数式を入れた列の1行目オートフィルタ選択で、選択したい目的の行の数字を選ぶ
5. 9行おきに表示されるので、まとめて選択し、コピー。
6. 「形式を指定して貼り付け」で「行列を入れ替え」で貼り付ける。

以上の手順で、9列おきのデータを取ってきてのコピーができます。
    • good
    • 0
この回答へのお礼

ご丁寧な回答ありがとうございます。
OFFSETで解決しました。
助かりました。

お礼日時:2009/05/27 15:06

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


人気Q&Aランキング