【问题标题】:How to optimize Excel formula automatically when drag and drop?拖放时如何自动优化Excel公式?
【发布时间】:2021-03-07 18:22:39
【问题描述】:

我有一个 Excel 公式,它正在从单元格的数组中查找一些课程。在下图中,A2 列是从 Wix 自动填充的,其中包含可以包含 1 到 10 门课程的课程数组。对于这个数组,如果课程存在于数组中,则 A:K 列填充 1,否则填充 0。

公式为:=--ISNUMBER(FIND(""""&B2:K2&"""",A2))

问题是当我填充一行并拖放以将公式填充到大量行时,公式正在发生变化。我需要保持 B2:K2 不变,只有 A2 应该改变。如果行是 A3,在公式中我应该有 =--ISNUMBER(FIND(""""&B2:K2&"""",A3))。

如何自动执行此操作,因为如果行数很大,并且无法将公式正确应用于所有行?

【问题讨论】:

  • 将公式更改为:=--ISNUMBER(FIND(""""&$B$2:$K$2&"""",A2)),或者如果您复制到下一行,则可能是=--ISNUMBER(FIND(""""&$B2:$K2&"""",A2)) $ 符号表示复制公式时单元格引用的该部分不应更改. (顺便说一句:我讨厌拖放...... ??????)
  • 你的结果会一直显示在B2:K2?看来您正在使用Excel365,那么您可以使用动态公式。
  • @byteis8bits 你能试试我的答案吗。
  • 注意:你不需要拖动任何东西。您所需要的只是一个公式,您可以在其中引用 A 列中的所有单元格。请参阅@T.M. 的评论。在答案here 下。我已经编辑了答案以反映这一点。
  • @JvdV 不错的解决方案!在这里发布!

标签: arrays excel excel-formula


【解决方案1】:

如果你想保持B2:K2 不变,那么用$ 锁定它们意味着绝对位置就像-

=--ISNUMBER(FIND(""""&$B$2:$K$2&"""",A2))

您可以对整个数据范围一次尝试以下公式。

=IF(ISERROR(FILTERXML("<t><s>"&SUBSTITUTE(A2:A4,",","</s><s>")&"</s></t>","//s[contains(., '" & $B$1:$K$1 & "')]")),0,1)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-10-03
    • 1970-01-01
    • 2023-01-18
    • 1970-01-01
    • 1970-01-01
    • 2013-06-07
    • 1970-01-01
    • 2014-01-02
    相关资源
    最近更新 更多