我有一个包含 A 到 T 列的 Excel 工作簿 A.xlsx,现在我需要将特定列 H、K、L 复制到一个新工作簿中,该工作簿将在我运行宏时创建。
我能够成功地将一系列列从一个工作表复制到另一个工作表,但我没有找到将特定列复制到新工作簿的方法。
Private Sub copy_sub()
Sheets("Sheet1").Columns("H:K").Copy Sheets("Sheet2").Range("A1")
End Sub
试试这个:
Sub dural()
Dim r1 As Range, r2 As Range
Sheets("Sheet1").Select
Set r1 = Range("K:L")
Set r2 = Range("H:H")
Set wbNew = Workbooks.Add
r2.Copy Range("H1")
r1.Copy Range("K1")
End Sub
基于添加工作簿后的事实,新工作簿将处于活动状态,Sheet1 将成为该工作簿中的活动工作表。还假设要复制 cols H,K,L,而不是 col I。
试试下面的示例代码
Private Sub copy_sub()
Dim wkb As Workbook
Set wkb = Workbooks.Add ' Will add new workbook
' with column name
ThisWorkbook.Sheets("Sheet1").Columns("H").Copy wkb.Sheets("Sheet2").Range("A1")
'with column index
ThisWorkbook.Sheets("Sheet1").Columns(9).Copy wkb.Sheets("Sheet2").Range("A1")
End Sub