VBA:跨列数累积添加数据达设定次数

时间:2017-06-03 12:54:53

标签: excel vba excel-vba excel-formula

我是使用Excel VBA的新手,我试图解决这个问题,但是在我的生活中无法解决这个问题。

我在A列中列出了一组数据,在E列中列出了另一组数据。 我想计算并显示以下在K列中添加A2和E2的次数。这样做的次数由C2中显示的值决定,即:

A2 + E2
A2 + (E2*2)
A2 + (E2*3)
.
.
A2 + (E2*C2)

然后,我想在列K + 3(沿着三列)和在列K + 6中的A4 + E3中显示A3和E3的累积添加,依此类推。我想重复这一点,直到处理完A列中所有数字的行。

以下是填写前三列计算电子表格的图片(请注意隐藏了多个列):

使用公式计算值的电子表格的屏幕截图

Screenshot of spreadsheet with values calculated using formulae

我希望这一切都有道理。非常感谢你对此的帮助!

2 个答案:

答案 0 :(得分:1)

对工作表1中的值尝试此VBA子过程。

enter image description here

enter image description here

答案 1 :(得分:0)

以下是其他人复制和使用的代码:

Option Explicit

Sub TDatapoints()
    With Worksheets("sheet1")
        With .Cells(2, "k").Resize(.Cells(2, "c").Value2, .Cells(.Rows.Count, "a").End(xlUp).Row - 1)
            .Formula = "=index($a:$a, column(b:b), 1)+index($e:$e, column(b:b), 1)*(row(1:1)-1)"
            .Value = .Value2
        End With
    End With
End Sub