2016年Excel批量添加一个公式

Batch add a formula in Excel 2016

我有一个包含数百个单元格的电子表格,其中包含像 =('Pricing Master'!$E135*'Pricing Master'!$L) 这样的公式。我想批量添加ROUNDUP公式,让他们都读,例如=ROUNDUP('Pricing Master'!$E135*'Pricing Master'!$L,0)。简单的 Replace All 将不起作用,因为它需要前面的函数调用以及后面的 Number 参数。不同时提供两者会产生错误。这会导致使用“全部替换”进行批量编辑时出现问题。

我确信有一种方法可以使用“选择性粘贴”功能来执行此操作,但如果有其他方法我会很高兴听到。

遍历每个单元格并将公式添加到原始公式。像这样

Sub updateFor()
Dim r As Range

For Each r In Selection.SpecialCells(xlCellTypeFormulas)''only cells with formula in

            r.Formula = "=ROUNDUP(" & Mid(r.Formula, 2) & ",0)"
Next r
End Sub

只需将 selection 替换为您要编辑的范围

如果您不熟悉 vba,这里有一个快速指南

  1. 按 ALT + F11 显示 vba 编辑器
  2. 来自插入菜单 select 模块
  3. module1 应该出现在左上角的项目window中, 点击这个
  4. 一大片window应该打开右边粘贴上面的代码在
  5. 返回您的工作表并select您要汇总的单元格
  6. 转到视图功能区,单击最右侧的宏按钮
  7. select 宏 'updateFor' 然后按 运行

我的方法是这样的,我经常使用包含许多公式的大表格来这样做:

一个:select 您要处理的行或列,

然后 edit/replace“=(”和“xyxy(”(我使用 xyxy 是因为它没有出现...

现在所有替换操作都会更快,因为没有重新计算发生...

所以现在 edit/replace “xyxy” 与 “xyxyroundup(“ and “)” 与 “,0)”

然后只需将“xyxy”替换为“=”

并等待它完成计算...