• ベストアンサー

49名の名簿を7名ずつの表に抽出したい。

エクセル2007です。 Sheet1のA列に210名の名簿があります。 この名前をSheet2のA列に7名B列に7名と7名ずつAD列までの表に抽出したいのですが教えて下さい。 Sheet2のA1に =INDEX(Sheet1!$A:$A,ROW(A1),0)に入力し、A7までオートフィルすると最初の7名分は、抽出されるのですがB列以降に7名ずつ抽出する時の関数を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • marbin
  • ベストアンサー率27% (636/2290)
回答No.1

Sheet2のA1に =INDIRECT("Sheet1!A"&(COLUMN()-1)*7+ROW()) あとは式のコピペでいけると思います。

その他の回答 (5)

noname#204879
noname#204879
回答No.6

[回答番号:No.5]と殆ど同じですが、半角1文字分だけ短い(^_^) =OFFSET(Sheet1!$A$1,ROW(A1)-1+(COLUMN(A1)-1)*7,)

gyouda1114
質問者

お礼

御礼遅れて申し訳ありません。 うまく行きました OFFSETはじめての関数でした。 齢70近くの老爺 理解に時間かかりました 今後ともご指導よろしくお願いします。

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.5

OFFSET関数を使用した例です。 開始位置は任意セルでも可能です。 =OFFSET(Sheet1!$A$1,ROW(A1)-1+(COLUMN(A1)-1)*7,0)

gyouda1114
質問者

お礼

御礼遅れて申し訳ありません。 うまく行きました OFFSETはじめての関数でした。 齢70近くの老爺 理解に時間かかりました 今後ともご指導よろしくお願いします。

noname#99913
noname#99913
回答No.4

=INDEX(Sheet1!$A:$A,ROW(A1)+(COLUMN()-1)*7,0) これでどうでしょう。

gyouda1114
質問者

お礼

御礼遅れて申し訳ありません。 うまく行きました 齢70近くの老爺 理解に時間かかりました 今後ともご指導よろしくお願いします。

  • marbin
  • ベストアンサー率27% (636/2290)
回答No.3

#1です。 一つ忘れてました。 INDIRECT関数は揮発性関数ですので、ほかにブックを編集してなくても ブックを閉じるときに上書き保存するか聞いてきます。

gyouda1114
質問者

お礼

御礼遅れて申し訳ありません。 うまく行きました 齢70近くの老爺 理解に時間かかりました 今後ともご指導よろしくお願いします。

  • hijirisei
  • ベストアンサー率34% (17/49)
回答No.2

関数つくってみました。 =INDEX(Sheet1!$A:$A,ROW()+((COLUMN()-1)*7),0) これを該当のセルにコピーすればできると思います。 後半の(column()-1)*7)の7の部分を8にすれば、8人づつになります。

gyouda1114
質問者

お礼

御礼遅れて申し訳ありません。 うまく行きました 齢70近くの老爺 理解に時間かかりました 今後ともご指導よろしくお願いします。

関連するQ&A