Excel:一次更改多个公式?

我使用“数据”选项卡下的“小计”工具将大块数据sorting到小计字段中。 但是,您只能select一个公式来应用。

我怎样才能应用一个单独的公式基于SUBTOTAL(1,范围)的列之一? 到目前为止,我已经用Subtotal(9,RANGE)填充了它,但有没有更快的方法来select所有这些,并将“9”更改为“1”?

  1. select列。
  2. 按下CTRL + H。
  3. 寻找什么: SUBTOTAL(9
  4. replace为: SUBTOTAL(1
  5. 点击全部replace

假设你的公式在A1:A5范围内

按Alt + F11打开VBE,并在同一工作簿的常规模块中input以下代码

 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,") 

现在将此公式复制到您需要的位置,然后仅在需要的位置复制粘贴值。

你也可以使用这个技巧来修改你需要的任何其他公式,所以我build议你保持这段代码方便:)