【问题标题】:Excel Find and Replace with Formulas - No VBAExcel 用公式查找和替换 - 无 VBA
【发布时间】:2018-05-12 00:45:34
【问题描述】:

我很好奇是否可以利用 Excel 中的“查找和替换”对话框来执行以下任务:

单元格 B1 中的 Excel 公式:

=myVBAFunction(A1)

需要改成

=myVBAFunction(A1)+F1

查找和替换很容易,因为我只需找到“myVBAFunction(A1)”并替换为“myVBAFunction(A1)+F1”。但是,我需要对引用 A2 和 F2 的 B2 重复此过程。然后是 B3 等等。

很多人建议把公式拖下来,这很好,或者我可以调整我的函数来合并额外的功能。不需要 Stackoverflow...

这就是问题我不能使用 VBA,并且向下拖动也不起作用,因为我依赖于技术含量较低的用户以一种故障安全的方式执行此操作。查找和替换方法将是最可靠的。

我指导的用户可以进行查找和替换(一个真实的示例有多个工作表),但我不能依靠他们来查找单元格并向下拖动公式。

是的,我可以通过电子邮件发送新版本,但我很好奇这是否真的可以通过查找和替换样式方式(或其他同样简单的方式)完成?

【问题讨论】:

  • VBA 函数调用 myVBAFunction(A1) 中的 A1 引用在您拖放时没有更新的问题是什么?
  • 请向我们展示更多数据,以便清楚实际的转换是什么。
  • ^^ 根据蒂姆的评论。您是只修改现有公式还是还有某种“自动填充”元素?
  • 不允许拖动 - 请参阅我自己的答案,但问题是找到一行通用替换文本,以确保单元格引用是自动生成或自计算的。 INDIRECT 和 ROW 做到了。

标签: excel formulas


【解决方案1】:

所以我在回答我自己的问题 - INDIRECT 拯救了这一天。

任务 - 将 A1 的内容替换为

=myVBAFunction(B1)

=myVBAFunction(B1)+F1

不使用VBA,或者将公式往下拉,使得方法结果A1000引用B1000和F1000等。

您可以像这样使用查找和替换

替换为

=myVBAFunction(INDIRECT("B" & ROW())) + INDIRECT("F" & ROW())

使用 INDIRECT 和 ROW 允许每个单元格使用相同的替换文本,但引用工作后替换。

【讨论】:

    猜你喜欢
    • 2013-07-15
    • 2013-07-24
    • 2014-10-12
    • 1970-01-01
    • 1970-01-01
    • 2015-01-10
    • 2020-12-13
    • 2018-04-11
    • 2019-10-23
    相关资源
    最近更新 更多