/ /列内のデータをあるブックから別のブックにコピーする-excel-vba、excel-2007、vba、excel

1つのワークブックから別のワークブックにデータをコピーする - excel-vba、excel-2007、vba、excel

Excel vbaを使用してからデータをコピーしたいあるワークブックから別のワークブックへの特定の列。たとえば、ワークブック1のA、B、E、G、H、M、N列をA2からワークブック2にコピーします。

現在、私はこの例を使用していますが、「マクロに作用させたいという目的には役立ちません。現在使用しているコードを以下に含めました。」

Sub SO()

Dim lastRow As Long
Dim ws1 As Worksheet
Dim ws2 As Worksheet

Set ws1 = Workbooks("workbook1.xlsm").WorkSheets("Sheet1")
Set ws2 = Workbooks("workbook2.xlsm").WorkSheets("Sheet1")

lastRow = ws1.Cells(ws1.Rows.Count, "A").End(xlUp).Row

ws1.Range(Cells(2, 1), Cells(lastRow, 1)).Copy

ws2.Range("C2").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

End Sub

助けてください。前もって感謝します。

回答:

回答№1は0

説明と例を示します。

あなたが使う

 ws1.Range(Cells(2, 1), Cells(lastRow, 1)).Copy
^                  ^
|                  |
Column 1           Column 1

そのため、行2と最後の行の間の範囲を列1から列1にコピーします。

それを変更すると

 ws1.Range(Cells(2, "A"), Cells(lastRow, "C")).Copy

行2と最後の行の間の列AからD(A、B、C、D)の範囲をコピーします。

上記の例で列Bが必要ない場合は、2つのコピー/貼り付けアクションで列Aと列C + Dを個別にコピーして貼り付ける必要があります。