そのマクロの内容は、セル範囲を変数で指定してコピーし、変数で指定したセルを左上角として貼り付けるというもので、コードの概要は以下のとおりです。
'-----------------------------------------------------------------------------------------
Sub おためしマクロ315()
Worksheets("S315").Activate
コピー範囲左上 = "D5"
コピー範囲右下 = "J7"
貼付位置 = "D9"
コピーしてすべて貼り付ける_A1指定
End Sub
'=========================================================================================
Private Sub コピーしてすべて貼り付ける_A1指定()
Range(コピー範囲左上 & ":" & コピー範囲右下).Copy 'コピー
Range(貼付位置).PasteSpecial Paste:=xlAll '★★★ すべて貼り付け
End Sub
'=========================================================================================
このマクロを別のブックのシートへ貼り付けるように改良したいという、ご希望でしょうか。
これについては、このHPの「コピー」のページに掲載している 「すべてコピーする」の中に下記のマクロがあります。
'-----------------------------------------------------------------------------------------
Sub クリップボードを経由せずにコピー貼り付けする_異なるブック()
Workbooks("BBB.xls").Worksheets("SSS").Range("A1:C3").Copy _
Workbooks("BB2.xls").Worksheets("SS2").Range("A4") '※1、2、3、4
End Sub
'-----------------------------------------------------------------------------------------
これを参考にして 315番のマクロを改良すると、次のようになります。
'=========================================================================================
Private Sub コピーしてすべて貼り付ける_A1指定()
Workbooks("315.xls").Worksheets("S315").Range(コピー範囲左上 & ":" & コピー範囲右下). _
Copy _
Workbooks("New.xls").Worksheets("Sheet1").Range(貼付位置) '★★★ すべて貼り付け
End Sub
'=========================================================================================
改良したマクロは、コピー元が 315.xlsの S315シート、コピー先が New.xlsの Sheet1となっていますが、このブック名とシート名は状況に合わせて変更してください。
|