Excel2010 データの行数に応じて表を複製し、データを入れたい 削除


Message#2 2015年2月10日(火)22時39分
From: VBA写真
以下のマクロで可能だと思います。

Sub Macro2()
Dim i, j As Integer
Dim MaxR2 As Long
Dim コピー回数 As Integer

MaxR2 = Workbooks("book2.xls").Worksheets("Sheet1").Cells(2, 1).End(xlDown).Row

コピー回数 = (MaxR2 - 2) \ 20

Application.ScreenUpdating = False

For j = 0 To コピー回数

If j >= 1 Then
Workbooks("book1.xls").Activate
Workbooks("book1.xls").Worksheets("Sheet1").Range(Cells(13, 1), Cells(32, 8)).Copy _
Destination:= _
Workbooks("book1.xls").Worksheets("Sheet1").Cells(j * 20 + 13, 1)
End If

For i = 1 To 7

Workbooks("book2.xls").Activate

If i = 1 Then
Workbooks("book2.xls").Worksheets("Sheet1").Range(Cells(j * 20 + 2, i), Cells(j * 20 + 21, i)).Copy _
Destination:= _
Workbooks("book1.xls").Worksheets("Sheet1").Cells(j * 20 + 13, i)

Else

Workbooks("book2.xls").Worksheets("Sheet1").Range(Cells(j * 20 + 2, i), Cells(j * 20 + 21, i)).Copy _
Destination:= _
Workbooks("book1.xls").Worksheets("Sheet1").Cells(j * 20 + 13, i + 1)

End If

Next i

Next j


Application.ScreenUpdating = True

End Sub


よろしくお願いします。

上のメッセージを削除します。
よければパスワードを入力し、削除ボタンをクリックしてください。

パスワード:

ExcelのVBAについてのQ&A掲示板

↑ExcelのVBA全般について分からない事があればこちらの掲示板よりご質問ください^^

VBAのInternetExplorer操作入門

↑ExcelのVBAをマスターできたら、エクセルVBAのIE(InternetExplorer)操作にも挑戦してみてください^^

VBAのIE制御入門RSS

RSSフィードを登録すると最新記事を受け取ることができます。

VBAIE操作のスカイプレッスン

エクセルVBAのステートメント

こちらでは、エクセルVBAの事例で利用したステートメントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

エクセルVBAのオブジェクト

こちらでは、エクセルVBAの事例で利用したオブジェクトをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

エクセルVBAのプロパティ

こちらでは、エクセルVBAの事例で利用したオブジェクトのプロパティをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

エクセルVBAのメソッド

こちらでは、エクセルVBAの事例で利用したオブジェクトのメソッドをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

エクセルVBAのイベント

こちらでは、エクセルVBAの事例で利用したオブジェクトのイベントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

dmb.cgi Ver. 1.068
Copyright(C) 1997-2014, hidekik.com