![](/img/trans.png)
[英]In VBA, how do i create a code where it matches dates from 2 sheets and paste data in to that matched date as values? Can't use vlookup for this
[英]How can I extract data from database sheet and paste matched range in different sheets
我的工作簿中有多张工作表。 我不想根据“A5:A116”中列出的范围内的工作表名称匹配从“组合”工作表中复制包含每个钻孔的 SPT 值的单元格,或者在最终数据输入到与钻孔 ID/单元格匹配的工作表之后可能更多“A5:A116”范围内的值并将其粘贴到 SPT 列下方。 这必须通过所有工作表的循环过程来继续。 还需要从匹配的单元格到要复制的范围的相对引用。 在代码中,范围 D5:D16 必须是基于单元格值的相对引用的浮动范围。 此外,粘贴范围将从matched.name工作表中SPT值下方的1个单元格开始我正在处理的代码如下,范围的相对引用似乎不起作用:
Sub example()
Dim wkSht As Worksheet
For Each wkSht In Sheets
For Each Cell In Sheets("Combine").Range("A5:A116")
If Cell.Value = wkSht.Name Then
On Error Resume Next
Sheets("Combine").Range("D5:D16").Copy Destination:=wkSht.Range("D29:D52")
End If
Next Cell
Next wkSht
End Sub
不同工作表中的数据提取
您的循环顺序不正确,并且您没有为cell
声明变量,请尝试以下代码修改,它应该可以正常工作:
Sub example()
Dim wkSht As Worksheet
Dim cell As Range
For Each cell In Sheets("Combine").Range("A5:A116").Cells
For Each wkSht In ThisWorkbook.Worksheets
If cell.Value = wkSht.Name Then
Sheets("Combine").Range(cell.Offset(0, 11), cell.Offset(30, 11)).Copy wkSht.Range("D29")
End If
Next wkSht
Next cell
End Sub
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.