家の中でのこだわりスペースはどこですか?

5000行近くある1枚のExcelシートを、100行毎に分けて別のシートへコピーしたいです。

以前は、地道に100行ずつコピペしていました。
もし、簡単にできる方法があれば、是非ご教示ください。

なお、マクロ?だとか難しい事が分からない初心者です。
宜しくお願い致します。

A 回答 (3件)

繰り返し作業はマクロの得意とするところです。


まず、「マクロの記録」機能で記録してみました
Sub マクロの記録()
  Sheets("Sheet1").Select '元シートの「Sheet1]を選択
  Application.Goto Reference:="R1:R100" '名前ボックスで「1:100」を入力
  Selection.Copy 'コピー
Sheets.Add 'シートを追加
  ActiveSheet.Paste '貼り付け
  Sheets("Sheet1").Select '元シートの「Sheet1]を選択
  Application.Goto Reference:="R101:R200" '名前ボックスで「1:100」を入力
  Application.CutCopyMode = False 'コピーの解除
  Selection.Copy 'コピー
  Sheets.Add 'シートを追加
  ActiveSheet.Paste '貼り付け
  Sheets("Sheet1").Select '元シートの「Sheet1]を選択
  Application.CutCopyMode = False 'コピーの解除
End Sub

上記の記録情報をもとに下記のように改良してみました
[Alt]+[F11]VBE起動
挿入 - 標準モジュール - 下記貼り付け
Sub マクロの記録改()
  Dim n As Long '変数の定義
  For n = 1 To 4901 Step 100
    Sheets("Sheet1").Select '元シートの「Sheet1]を選択
    Application.Goto Reference:="R" & n & ":R" & n + 99
    Selection.Copy 'コピー
    Sheets.Add 'シートを追加
    ActiveSheet.Paste '貼り付け
  Next n
  Application.CutCopyMode = False 'コピーの解除
End Sub
シートに戻り、[Alt]+[F8] で対象のマクロを実行します。
質問部分から読み取れない部分は勝手に補完しています
VBAはあまり自信がないので参考まで
    • good
    • 0
この回答へのお礼

ありがとうございました!
全く分からないままですが、ご回答の通りに入力してみた所…
ササッとできてしまいました!
マクロって、すごいんですね(*^-^*)
本当に助かりました。
ありがとうございました。

お礼日時:2013/01/25 16:58

下記URLの過去ログのページをご参照下さい。


No.2またはNo.3のどちらでも出来ますよ。

「エクセルで20万行あるシートから100行ずつ抽出したいのですが」
http://oshiete.goo.ne.jp/qa/4273114.html
    • good
    • 0
この回答へのお礼

回答ありがとうございました。
貴重なお時間を割いて頂き、有難うございました。

お礼日時:2013/01/25 16:59

私のスキルからですと、50シート作成して、



2ページに、=a101~=?200 まで(?は最終の列記号)
3ページに、=a201~=?300 まで
|
|
50ページに、=a4901~=?5000 まで

面倒ですが、一度作っておけばいいかな?って感じです。
    • good
    • 0
この回答へのお礼

回答ありがとうございました。
貴重なお時間を割いて頂き、有難うございました。

お礼日時:2013/01/25 16:59

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

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


おすすめ情報