通过循环从另一张工作表中的列获取数据

时间:2019-11-11 14:24:14

标签: excel vba

我有一个工作簿,其中有两页,“信息”和“粘贴”。

sheet1

sheet2

我正在尝试使用列E(“ DPD”)的值之和,即28(存在于单元格E20中)和同一列中的其他数据,它们相加以获得如下结果: / p>

result

我尝试了以下代码,但是却无济于事

Sub Range_Gen_Method()

Dim targetCell As Long
Application.ScreenUpdating = False

targetCell = Sheets("INFO").Cells(Rows.Count, 5).End(xlUp).Value

For i = 1 To targetCell
    For j = 1 To Range("E7").Value
        Sheets("paste").Cells(Rows.Count, 2).End(xlUp).Offset(1, 0) = j & " - " & 28 & " to " & j + 1 & " - " & 28
    Next
    Range("B3").Offset(1, 0).Select
Next
Application.ScreenUpdating = True

End Sub

1 个答案:

答案 0 :(得分:1)

不需要VBA。您可以使用公式然后粘贴值来完成此操作:

enter image description here

是的,第一个单元格为空(可以手动执行),但是可以使用公式获得其余结果。我在C3中的公式是:

=SUM($A$2:A2)+1&"/"&SUM($A$2:$A$14)&" - "&SUM($A$2:A3)&"/"&SUM($A$2:$A$14)

希望您可以使其适应您的需求。

编辑:这里的技巧是使用dinaminc范围。请注意,第一个和第三个总和(我的意思是SUM($A$2:A2)SUM($A$2:A3))仅对一个绝对参考值求和,因此该范围在每一行中都会发生变化