输入公式 SUM(INDIRECT("A1:A"&ROW()-1))
运行实例如下图
注意图中b4,和b5单元格都输入相同的公式。
此方法可以避免写vba,以前此类问题的解决都是通过vba代码进行处理
对函数进行解析
主要使用了
INDIRECT()
2、公式说明:
A、公式 =Indirect(B5) 之所以会返回引用错误,是因为Indirect函数的第一个参数必须为文本,而 B5 是对单元格的引用。
B、公式 =INDIRECT("B"&5) 中,"B"&5 为文本,意思是用 & 把字符 B 与 5 连接起来,即 "B5";由于 "B5" 为文本而不是对 B5 单元格的引用,因此Indirect函数能返回正确的值。
C、公式 =INDIRECT("B"&5) 与 =INDIRECT("B"&5,true) 返回一样的值,说明Indirect函数省略第二个参数与把它设置为 True 一样;另外,True 也可以用 1 代替,即公式 =INDIRECT("B"&5,true) 可改为 =INDIRECT("B"&5,1)。
ROW()
返回行号
参考
(2 封私信 / 80 条消息) excel要如何自动累加某个单元格上方的所有单元格? - 知乎 (zhihu.com)https://www.zhihu.com/question/454408499
参考2
在Excel中,如何求和当前单元格上方的所有数字? (qastack.cn)https://qastack.cn/superuser/661847/in-excel-how-can-i-sum-all-the-numbers-above-the-current-cell参考3
Excel Indirect函数用法的7个实例,含跨表跨文档引用、与Match、Address与Row组合实现多表和批量提取数据-伙伴云 (huoban.com)https://www.huoban.com/news/post/35525.html#:~:text=Excel%20Indirect%E5%87%BD%E6%95%B0%20%E7%94%A8%E6%B3%95%20%E7%9A%847%E4%B8%AA%E5%AE%9E%E4%BE%8B%EF%BC%8C%E5%90%AB%E8%B7%A8%E8%A1%A8%E8%B7%A8%E6%96%87%E6%A1%A3%E5%BC%95%E7%94%A8%E3%80%81%E4%B8%8EMatch%E3%80%81Address%E4%B8%8ERow%E7%BB%84%E5%90%88%E5%AE%9E%E7%8E%B0%E5%A4%9A%E8%A1%A8%E5%92%8C%E6%89%B9%E9%87%8F%E6%8F%90%E5%8F%96%E6%95%B0%E6%8D%AE%201%20%E4%B8%80%E3%80%81Excel%20Indirect%E5%87%BD%E6%95%B0%E7%9A%84%E8%AF%AD%E6%B3%95%201%E3%80%81%E8%A1%A8%E8%BE%BE%E5%BC%8F%EF%BC%9AINDIRECT,%2B%20Row%20%2B%20Address%20%2B%20Column%20%E5%87%BD%E6%95%B0%E7%BB%84%E5%90%88%E5%AE%9E%E7%8E%B0%E5%B0%86%E5%A4%9A%E4%B8%AA%E8%A1%A8%E6%A0%BC%E4%B8%AD%E6%8C%87%E5%AE%9A%E8%A1%8C%E7%9A%84%E6%95%B0%E6%8D%AE%E6%8F%90%E5%8F%96%E5%88%B0%E4%B8%80%E4%B8%AA%E8%A1%A8%E6%A0%BC%20
特此记录
anlog
2023年7月27日