You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Excel VBA实现多活动单元格行指定列SUM计算需求

解决多选中行的H、K列求和问题

你的原代码只取了最后一个选中单元格所在的行,所以只能计算单行的H、K列之和。要实现选中任意多行(不管点的是哪一列),让A1自动汇总所有选中行的H、K列数值,修改代码如下:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim sumRange As Range
    Dim cell As Range
    
    Set sumRange = Nothing
    
    ' 遍历选中区域的每一行
    For Each cell In Target.Rows
        ' 把当前行的H列和K列单元格加入求和区域
        If sumRange Is Nothing Then
            Set sumRange = Union(Me.Range("H" & cell.Row), Me.Range("K" & cell.Row))
        Else
            Set sumRange = Union(sumRange, Me.Range("H" & cell.Row), Me.Range("K" & cell.Row))
        End If
    Next cell
    
    ' 设置A1的求和公式,无选中行时清空
    If Not sumRange Is Nothing Then
        Me.Range("A1").Formula = "=SUM(" & sumRange.Address(False, False) & ")"
    Else
        Me.Range("A1").ClearContents
    End If
End Sub

代码说明

  • 遍历选中区域的每一行,自动抓取对应行的H列和K列单元格
  • 把所有需要求和的单元格合并成一个区域,最终用SUM函数计算总和
  • 不管选中一行还是多行,甚至选中行内的任意列,都能正确汇总对应行的H、K列数值
  • 没有选中任何行时,A1会自动清空

内容的提问来源于stack exchange,提问作者Susmaryosep

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 06:33:24