[英]Copy specific columns from one sheet to another
我想將某些列(如A,B,H)從一張紙復制到另一張紙,並將此代碼復制到模塊,但出現“運行時錯誤9”。
Sub CopyColumnToWorkbook()
Dim sourceColumn As Range, targetColumn As Range
Set sourceColumn = Workbooks("sheet1.xlsm").Worksheets(1).Columns("A")
Set targetColumn = Workbooks("sheet2.xlsm").Worksheets(1).Columns("A")
sourceColumn.Copy Destination:=targetColumn
End
我正在處理具有55列和453行的數據。 我如何將備用列從一個工作表復制到另一個工作表...示例
我只需要2010-2011年的列。 在我的數據中。2010-2011年和2011-2012年是交替排列的,例如一列用於2010-2011年四月,下一列用於2011-2012年四月。.再次,下一列是2010-2011年五月,下一列是五月-2011-2012 ..等等。
使用like語句,例如:
Sub Button1_Click()
Dim sh1 As Worksheet, sh2 As Worksheet
Dim col As Long, rng As Range, c As Range, cRng As Range, cRws As Long, col2 As Long
Set sh1 = Sheets("Sheet1")
Set sh2 = Sheets("Sheet2")
With sh1
col = .Cells(1, .Columns.Count).End(xlToLeft).Column
Set rng = .Range(.Cells(1, 1), .Cells(1, col))
For Each c In rng.Cells
If c Like "*2010-2011*" Then
cRws = .Cells(.Rows.Count, c.Column).End(xlUp).Row
Set cRng = .Range(.Cells(1, c.Column), .Cells(cRws, c.Column))
cRng.Copy sh2.Cells(1, sh2.Columns.Count).End(xlToLeft).Offset(, 1)
End If
Next c
End With
sh2.Columns("A:A").EntireColumn.Delete Shift:=xlToLeft
sh2.Cells.EntireColumn.AutoFit
End Sub
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.