我需要更换$D49和
SERROR(VLOOKUP($B49 & " Total",Flt_S2D1,$Z$47,0)),0,VLOOKUP($B49 & " Total",Flt_S2D1,$Z$47,0))** in below formula.
=IFERROR(IF($Z$38="CBO Dmd",$C49,IF($Z$38="CBO Dmd-Cust Raw",$D49*($Y49/$E49),IF($Z$38="CBO Dmd-Pr CBO",$D49*($X49/$E49),IF($Z$38="CBO Dmd-BAB Grs CGID",$D49*($W49/$E49),IF($Z$38="CBO Dmd-Bill Grs CGID",$D49*($V49/$E49),$D49*($CC49/$E49)))))),0)
我已经在 Google 上搜索并找到了一些文章来做到这一点,但那些都与用计算结果或单元格值替换公式的一部分有关。
我可以更换 $D49通过多次执行获得所需值,但是有没有办法一次性替换查找并替换全部,我们正在进行文本替换。
答案1
常规搜索和替换有效(快捷键 Ctrl+H)。只需确保选择“查找范围:”公式
答案2
您仍然可以使用公式在单元格上进行搜索和替换。它将应用于公式,而不是您看到的结果。尝试一下,看看它是否有效。
答案3
此解决方案不需要任何额外的 VBA 代码,并且可以与 Google 电子表格和几乎所有版本的 Excel 兼容。
VIM
使用和记事本的组合在多个 excel 单元格中进行复杂的搜索和替换相对容易Excel
。由于 VIM 可以执行非常复杂的搜索和替换操作,因此您几乎可以用这种方法进行搜索和替换。
如果你已经vim
在 Windows 上安装了,则不需要记事本。假设Excel
安装在Windows
脚步
- 按 `Ctrl-``,将显示的值更改为公式(https://www.thoughtco.com/show-hide-formulas-in-excel-and-google-spreadsheets-3123884)
- 从 Excel 复制公式
- 将公式复制到 VIM 中:
i
在normal
模式下按vim
。按Shift-Insert
并Escape
- 使用
ex
模式搜索并替换为Regular expressions
按 进行搜索和替换:%s/old/new/gc
。此处 old 是您要替换的表达式部分,而new
new 是formula
您要替换的表达式部分。https://stackoverflow.com/a/505861/4752883 - 确保在模式
%s/[[:space:]]*//gc
中执行删除每行前面的所有空格ex
vim
- 如果您在 Linux 中
.txt
使用,请将该文件保存为文件。vim
.txt
按 和 键从文件Ctrl-A
中复制公式Ctrl-V
,并将其输入到第一个单元格中