【问题标题】:Excel VBA Cumulative sums in arraysExcel VBA数组中的累积和
【发布时间】:2017-11-25 12:38:00
【问题描述】:

嗨,

我刚开始使用 Excel VBA,我正在做一个带有数组的小项目。 Array1 中的数据是静态的。我正在寻找一种使用 VBA 填充 Array2 的方法。

对于 Array2 中的每个单元格,我想执行以下操作:

Array2(Row1) = Array1(Row1)

….

Array2(Row 3) = Array1(Row1+Row2+Row3)

….

Array2(Row5) = Array1(Row1+Row2+….+Row5)

如何将此操作转换为 VBA?

【问题讨论】:

    标签: arrays excel vba


    【解决方案1】:

    你有没有尝试过?这是一种方法。

    Sub x()
    
    Dim array1, array2() As Long, i As Long, j As Long, k As Long
    
    array1 = Range("A1").CurrentRegion.Value 'array1 populated from sheet, but could be via code
    
    ReDim array2(1 To UBound(array1, 1), 1 To UBound(array1, 2))
    
    For i = LBound(array1, 1) To UBound(array1, 1)
        k = k + 1
        For j = LBound(array1, 2) To UBound(array1, 2)
            array2(i, j) = Application.Sum(Application.Index(array1, Evaluate("ROW(1:" & k & ")"), j))
        Next j
    Next i
    
    Range("I1").Resize(UBound(array2, 1), UBound(array2, 2)).Value = array2
    
    End Sub
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-11-27
      • 2023-01-20
      • 1970-01-01
      • 2021-02-11
      • 2019-09-20
      • 2016-07-11
      • 2018-08-17
      相关资源
      最近更新 更多