如何录制适配任意行数的Excel求和宏?无需VBA能否实现?
如何录制适配任意行数的Excel求和宏(无需手动编写VBA)
其实不用写VBA代码也能解决这个问题!你之前的宏之所以只处理固定行数,是因为录制时手动拖拽填充柄到了具体的行号,Excel把这个固定行数硬记录进了宏里。只要换一种操作方式录制,就能让宏自动识别表格的有效行数。
具体操作步骤如下:
- 先准备好目标表格,确保B、C列已有数据,D2单元格为空。
- 点击「开发工具」选项卡(如果找不到这个选项,去Excel设置的「自定义功能区」里勾选它),然后点击「录制宏」,给宏起个好记的名字(比如
AutoSumBCtoD),存储位置选「个人宏工作簿」的话,所有Excel文件都能调用这个宏,设置好后点确定开始录制。 - 选中D2单元格,输入公式
=SUM(B2:C2),按回车确认公式生效。 - 重新选中D2单元格,把鼠标移到单元格右下角的填充柄(那个小方块),双击它——Excel会自动识别B/C列最后一行有数据的位置,把公式填充到对应的D列行,完全不用手动拖到固定行。
- 最后点击「停止录制」就搞定了。
现在你去其他表格试试这个宏:只要B、C列有数据,运行宏后D列会自动填充到最后一行,再也不会局限于原表格的行数了。
原理其实很简单:双击填充柄这个操作,Excel会记录成「自动填充至相邻列最后非空行」的逻辑,而不是固定的行号,所以宏就能动态适配不同表格的行数啦。
内容的提问来源于stack exchange,提问作者Gergely
相关产品推荐
相关产品推荐

