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