0
因此,我有一個工作簿,其中有兩張工作表。我需要將工作表2(「細節」)中的數據複製到工作表1(「Syncrofit」)。來自ws2的項目我需要粘貼到表格1上的漸進行中,因此表格2中的行B列(稱爲「Joint1-1」)需要插入到表格1中的行1下方。這基本上會創建一個嵌套表格。Excel VBA:從一個工作表複製到另一個
這是我迄今爲止,大多是從代碼和幫助張羅,我發現在這裏:
Sub SelectJoints()
Sheets("Detail").Activate
Dim Selection1 As Integer, Selection2 As Integer
Dim SelectionRange As Range
Dim num As Integer
Dim rngFind As Range
Set rngFind = Columns("B:B").Find(what:="*" & "Joint1-" & num, After:=Range("B1"), LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext)
If Not rngFind Is Nothing Then
Selection1 = rngFind.Row + 1
End If
Set rngFind = Columns("B:B").Find(what:="*Joint1-" & num + 1, After:=Range("B1"), LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext)
If Not rngFind Is Nothing Then
Selection2 = rngFind.Row - 1
End If
If Selection1 > 0 And Selection2 > 0 Then
Set SelectionRange = Range(Cells(Selection1, 2), Cells(Selection2, 6))
End If
末次
在這裏的意圖是,這應該激活細節單,在列B中找到匹配「SomeTextHere(Joint1-1)」的字符串並選擇這些行。然後,我需要它將這些選擇粘貼到表單1(在第1行下面,其中一列中的值爲「Joint」值),返回到表2,選擇包含「SomeTextHere(Joint1-2 )「並粘貼到下一行下面(剛剛插入的那些之後)。我意識到,粘貼部分不在代碼中。這一直使我瘋狂。
請原諒我對VBA的知識不足。
我想成品看起來像一個嵌套表有點像如下:
Original Items
Copied from sheet 2
Copied from sheet 2
Copied from sheet 2
Original Item 2
Copied from sheet 2
etc.
任何幫助是極大的讚賞,感謝,
啊,優秀的,應該給我一個好的開始。它添加了所有的值,但我需要它來插入行,所以應該只是常規粘貼而不是粘貼值,是正確的?還有Joints 2-xx,3-xx等,但我應該可以爲主數字添加一個變量,或者複製/粘貼joint2-x,3-x等的代碼。謝謝! – user2892425
嗯。所以你的意思是,而不是僅僅將值粘貼在對方下面,你想插入行嗎?如果這就是你想要的,我修改了代碼來做到這一點......並且還有一個額外的循環來處理聯合Y-X部分。 – stobin
將它們作爲行插入,但它將複製4列並在整行上重複它。另外,我需要它跳到下一行插入工作表2中的下3行,以便它基本上在兩張表之間構建一個嵌套表。我編輯了OP,讓我舉例說明我的意思 – user2892425