dポイントプレゼントキャンペーン実施中!

ExcelのSheet1に連続したデータが入っています。

Sheet2はSheet1の内容を参考にしてレイアウトを変えていますが、

Sheet1で入力してある項目を参照して表示したいです。

コピーには規則性があるので、Sheet2を2項目だけ入力した後、

オートフィルで、一発で全部コピーしたいです。

VBAではなく、Sheet2に書くべき関数のコードを教えてください。

よろしくお願い致します。


-------------------------------

連続したデータがSheet1に大量に入っています。


  A   B    C
1 北海道 札幌市 メロン
2 青森県 八戸市 りんご
3 岩手県 盛岡市 冷麺

以下、多数あり。



Sheet2に、

  A   B    C
1 北海道 札幌市 メロン
2
3
4
5 青森県 八戸市 りんご
6
7
8
9 ※ここから下をオートフィルのコピーで表示したい

A 回答 (2件)

シート2のA2セルには(A1,A3セルでもよい)次の式を入力してC2セルまでドラッグコピーしたのちに下方にもドラッグコピーします。



=IF(MOD(ROW(A1),4)<>1,"",IF(INDEX(Sheet1!$A:$C,ROUNDUP(ROW(A1)/4,0),COLUMN(A1))="","",INDEX(Sheet1!$A:$C,ROUNDUP(ROW(A1)/4,0),COLUMN(A1))))

上式では1つのデータに4行を使っているので4が入力されています。5行必要なら5に改めて使用すればよいでしょう。
なお、シート1でデータが2行目から下方になる場合には次のような式になります。

=IF(MOD(ROW(A1),4)<>1,"",IF(INDEX(Sheet1!$A:$C,ROUNDUP(ROW(A1)/4,0)+1,COLUMN(A1))="","",INDEX(Sheet1!$A:$C,ROUNDUP(ROW(A1)/4,0)+1,COLUMN(A1))))

+1が新たに追加されますね。
    • good
    • 3
この回答へのお礼

詳しいご回答ありがとうございました!

大変参考になりました!

お礼日時:2012/12/31 08:04

こんばんは。




添付図:
シート2のA1セルに
=INDEX(Sheet1!A:A,ROW(A4)/4)
と記入、右にコピー(または右にコピーして並ぶ数式を参考に、必要な列を参照する式を作成)

A1:C4を選択、下向けにオートフィルドラッグコピーして完成。




#別の方法(もっと簡単な数式。ただし「手を動かすのがメンドクサイ」人には不向き)
シート2のA1セルに
=Sheet1!A1
と記入、コピーして「C10セルまで」貼り付ける
D1からD10に、数字の1,2,3,4,…10と記入する
D1:D10をコピーし、D11、D21、D31、D41に貼り付ける
(都合1から10が4回並ぶ)

A:D列を選択し、D列昇順でA:D列全体を並べ替えると完成。
「Excelの連続データから数行おきのコピ」の回答画像1
    • good
    • 1

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A