这是我第一次使用本网站,如果有人能帮我在Excel中编写Macro代码来执行以下操作,我将非常感激。
情况:
Data A
,Data B
,...,Data H
的数据表。Summary
的摘要表。C8
和水平(即C8
,D8
,{{1}的ID数量},...)。E8
中的ID包含C8
,C9
,C10
,C13
,C14
)的相关数据。待办事项:
C15
,从Data A
开始检查单元格是否为空。 C8
中的ID(字符串和数字组合)以及(C8
到C9
)和({{1}的相关数据(C10
张到C13
张(C15
到Summary
)。A1
张上A6
的下一个单元格,重复步骤2.此时,复制的目的地为D8
到Data A
在B1
表上。B6
表上第8行的单元格为空,请移至下一个数据表(Summary
)。Data A
表单上找到空单元格。我希望能找到能够做到这一点的人。
这是我到目前为止(请理解我是VBA的初学者):
Data B
答案 0 :(得分:1)
未测试:
Sub CopyToSummary()
Dim arrSheets, i As Integer
Dim rngId As Range, rngSummary As Range
arrSheets = Array("A", "B", "C", "D", _
"E", "F", "G", "H")
Set rngSummary = ThisWorkbook.Sheets("Summary").Range("A1")
For i = LBound(arrSheets) To UBound(arrSheets)
Set rngId = ThisWorkbook.Sheets("Data " & arrSheets(i)).Range("C8")
Do While Len(rngId.Value) > 0
With rngSummary
.Value = rngId.Value
.Offset(1, 0).Value = rngId.Offset(1, 0).Value
'etc for the other values
End With
Set rngSummary = rngSummary.Offset(0, 1)
Set rngId = rngId.Offset(0, 1)
Loop
Next i
End Sub