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,这里有一个快速指南
- 按 ALT + F11 显示 vba 编辑器
- 来自插入菜单 select 模块
- module1 应该出现在左上角的项目window中,
点击这个
- 一大片window应该打开右边粘贴上面的代码在
- 返回您的工作表并select您要汇总的单元格
- 转到视图功能区,单击最右侧的宏按钮
- select 宏 'updateFor' 然后按 运行
我的方法是这样的,我经常使用包含许多公式的大表格来这样做:
一个:select 您要处理的行或列,
然后 edit/replace“=(”和“xyxy(”(我使用 xyxy 是因为它没有出现...
现在所有替换操作都会更快,因为没有重新计算发生...
所以现在 edit/replace “xyxy” 与 “xyxyroundup(“ and “)” 与 “,0)”
然后只需将“xyxy”替换为“=”
并等待它完成计算...
我有一个包含数百个单元格的电子表格,其中包含像 =('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,这里有一个快速指南
- 按 ALT + F11 显示 vba 编辑器
- 来自插入菜单 select 模块
- module1 应该出现在左上角的项目window中, 点击这个
- 一大片window应该打开右边粘贴上面的代码在
- 返回您的工作表并select您要汇总的单元格
- 转到视图功能区,单击最右侧的宏按钮
- select 宏 'updateFor' 然后按 运行
我的方法是这样的,我经常使用包含许多公式的大表格来这样做:
一个:select 您要处理的行或列,
然后 edit/replace“=(”和“xyxy(”(我使用 xyxy 是因为它没有出现...
现在所有替换操作都会更快,因为没有重新计算发生...
所以现在 edit/replace “xyxy” 与 “xyxyroundup(“ and “)” 与 “,0)”
然后只需将“xyxy”替换为“=”
并等待它完成计算...