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

Excel如何通过VBA引用另一工作表动态变化的自动求和单元格值

解决方法

以下提供两种可行方案,可根据你的使用场景选择:

方案1:修改现有VBA代码,求和同步写入目标工作表

直接调整你现有代码,明确指定工作表避免激活表漂移问题,同时加一行代码把求和结果同步到其他工作表即可,示例代码如下:

Dim lastrow1 As Long
' 明确指定操作A工作表,避免激活表错误
With Worksheets("A")
    lastrow1 = .Cells(.Rows.Count, "J").End(xlUp).Row + 1
    .Cells(lastrow1, "J").Value = "=Sum(J2:J" & lastrow1 - 1 & ")"
    ' 下方代码将求和结果同步到其他工作表,可自行修改表名和目标单元格
    Worksheets("你要展示结果的工作表名").Range("你要放结果的单元格位置,比如A1") = .Cells(lastrow1, "J").Value
End With

如果需要目标单元格保留和A表求和的联动关系,也可以直接给目标单元格写入引用公式:

Worksheets("你要展示结果的工作表名").Range("目标单元格位置").Formula = "='A'!J" & lastrow1

方案2:不改VBA,用Excel公式直接获取动态求和结果

如果不想修改现有代码,可以直接在要展示结果的工作表的目标单元格输入以下公式,会自动抓取A表J列最后一个数值(也就是你动态插入的求和结果):
=LOOKUP(9E+307,A!J:J)

注:如果A表J列求和单元格下方还有其他数值内容,该公式会取到最底部的数值,这种场景优先使用方案1更稳妥。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 02:24:05