【发布时间】:2025-12-22 14:15:06
【问题描述】:
我已使用“数据”选项卡下的“小计”工具将一大块数据分类到小计字段中。但是,您只能选择一个公式来应用。
如何根据 SUBTOTAL(1,RANGE) 将单独的公式应用于其中一列?到目前为止,我已经用 Subtotal (9,RANGE) 填充了它,但是有没有更快的方法来选择所有这些并将“9”更改为“1”?
【问题讨论】:
我已使用“数据”选项卡下的“小计”工具将一大块数据分类到小计字段中。但是,您只能选择一个公式来应用。
如何根据 SUBTOTAL(1,RANGE) 将单独的公式应用于其中一列?到目前为止,我已经用 Subtotal (9,RANGE) 填充了它,但是有没有更快的方法来选择所有这些并将“9”更改为“1”?
【问题讨论】:
SUBTOTAL(9
SUBTOTAL(1
【讨论】:
假设您的公式在 A1:A5 范围内
按 Alt+F11 打开 VBE,并在同一工作簿的通用模块中输入以下代码
Function GetFormula(Cell As Range) As String
GetFormula = Cell.Formula
End Function
我从http://dmcritchie.mvps.org/excel/formula.htm得到这个代码
有关如何在模块中插入此代码的说明,请参阅http://www.cpearson.com/excel/writingfunctionsinvba.aspx 的“代码放置位置”部分
现在,您可以提取公式。在辅助列中使用此公式,例如 B 列
=SUBSTITUTE(GetFormula(A1),"(1,","(9,")
现在将此公式复制到您需要的位置,并仅将值复制粘贴到需要的位置。
你也可以使用这个技巧来修改你需要的任何其他公式,所以我建议你把这段 sn-p 代码放在手边:)
【讨论】:
更改第一个或最后一个单元格然后复制它 选择所有其他单元格(您可以使用 Ctrl+Shift+向上、向下、向左或向右)然后使用过去特殊并选择公式
【讨论】: