首页 > 解决方案 > 列底部的自动求和

问题描述

每次运行它时,我都尝试在 L 列的底部进行宏自动求和,同时考虑到列的长度会发生变化。我有这段代码自动对 G 列的底部求和,所以我将 G 切换为 L,但它没有按预期工作。这是为什么?有人可以对代码进行编辑,以便即使范围可能每周变化,它也会自动对列的底部求和?

Sheets("Report").Select
    Const SourceRange = "A:L"
    Dim NumRange As Range, formulaCell As Range
    Dim SumAddr As String
    Dim c As Long

    For Each NumRange In Columns(SourceRange).SpecialCells(xlConstants, xlNumbers).Areas
        SumAddr = NumRange.Address(False, False)
        Set formulaCell = NumRange.Offset(NumRange.Count, 0).Resize(1, 1)
        formulaCell.Formula = "=SUM(" & SumAddr & ")"

        c = NumRange.Count
    Next NumRange

标签: excelvba

解决方案


我还没有足够的声誉来添加评论以回复您对 Darren 的问题 - 但您所要做的就是从他的第二组代码中删除包含“Next”的整行;这是他从第一组代码中删除的“for”循环的结束,应该被删除。


推荐阅读