粘貼我有兩個工作簿。 Book1和Book2。從一個工作簿中提取數據,根據不同的列名,並在另一個工作簿
我想複製第一冊的內容,對工作表Sheet1工作表Sheet 3 BOOK2。
book1的sheet1中的數據從第22行開始,我希望它們從sheet5的book2的第5行粘貼。
我在少數情況下,我想跳過列並粘貼選定的列。
例如:來自bk1,sht1,我想要將A列粘貼到Bk2的列B中,sht3; Bk1 sht1,列b粘貼在sht3的A列中,Bk1 sht3的列C在bk2 sht3的列I中。喜歡這個。
我試圖用一個代碼,我在哪裏尋找列,而不是名字。
對於例如:而不是拆分(列A),我想分割(「項目名稱」)並將其粘貼在我的工作表B列。
Sub ExtractBU()
Dim x As Workbook
Dim y As Workbook
Dim Val As Variant
Dim filename As String
Dim LastCell As Range
Dim LastRow As Long
CopyCol = Split("A,B,C,D,E,F,H,I,K,L,M,O,P", ",")
LR = Cells(Rows.Count, 1).End(xlUp).Row
LC = Cells(1, Columns.Count).End(xlToLeft).Column
LCell = ActiveWindow.RangeSelection.SpecialCells(xlCellTypeLastCell).Address
LCC = ActiveWindow.RangeSelection.SpecialCells(xlCellTypeLastCell).Column
lcr = ActiveWindow.RangeSelection.SpecialCells(xlCellTypeLastCell).Row
Set y = ThisWorkbook
Dim path1, Path2
path1 = ThisWorkbook.Path
Path2 = path1 & "\Downloads"
Set x = Workbooks.Open(filename:=Path2 & "\Report.xlsx")
For Count = 0 To UBound(CopyCol)
Set temp = Range(CopyCol(Count) & "22:" & CopyCol(Count) & lcr)
If Count = 0 Then
Set CopyRange = temp
Else
Set CopyRange = Union(CopyRange, temp)
End If
Next
CopyRange.Copy
y.Sheets("BU").Paste y.Sheets("BU").Range("A4")
Application.CutCopyMode = False
x.Close
End Sub
誰能告訴我我該怎麼做?任何潛在客戶都會有所幫助
你是什麼意思的「列名」?是否有一排標題(我想是第一個)? – CMArg
此外,1)你openening一個文件('x')和關閉它不執行任何任務,2)當設置copyRange是作爲聯合您選擇的全範圍(列A到P,行22到LCR):使用數組和聯合看起來很奇怪,3)你沒有使用變量LR,LC,LCell和LCC:是有原因的嗎? – CMArg
@CMArg列名稱,我的意思是頭文件。我沒有使用它們。 – Jenny