• ベストアンサー

Excelシートを分割して新シートにコピーしたい

5000行近くある1枚のExcelシートを、100行毎に分けて別のシートへコピーしたいです。 以前は、地道に100行ずつコピペしていました。 もし、簡単にできる方法があれば、是非ご教示ください。 なお、マクロ?だとか難しい事が分からない初心者です。 宜しくお願い致します。

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

  • ベストアンサー
回答No.2

繰り返し作業はマクロの得意とするところです。 まず、「マクロの記録」機能で記録してみました 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はあまり自信がないので参考まで

tammy0513
質問者

お礼

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

その他の回答 (2)

  • koko88okok
  • ベストアンサー率58% (3839/6543)
回答No.3

下記URLの過去ログのページをご参照下さい。 No.2またはNo.3のどちらでも出来ますよ。 「エクセルで20万行あるシートから100行ずつ抽出したいのですが」 http://okwave.jp/qa/q4273114.html

tammy0513
質問者

お礼

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

  • maiko0318
  • ベストアンサー率21% (1483/6969)
回答No.1

私のスキルからですと、50シート作成して、 2ページに、=a101~=?200 まで(?は最終の列記号) 3ページに、=a201~=?300 まで | | 50ページに、=a4901~=?5000 まで 面倒ですが、一度作っておけばいいかな?って感じです。

tammy0513
質問者

お礼

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

関連するQ&A