【问题标题】:Conditional formatting based on formula addressing current row in LibreOffice Calc基于解决 LibreOffice Calc 中当前行的公式的条件格式
【发布时间】:2019-06-01 00:37:47
【问题描述】:

我在 LibreOffice Calc 中有一列带有条件格式的单元格,可以将样式应用于这些单元格。

如果以下公式为真,则条件格式被编程为格式化单元格:

AND(B106=0,C106=0)

诀窍在于,我不想总是为第 106 行评估这个公式,而是想评估 当前 行的公式。

例如,在单元格 A1 中,我希望条件公式为

AND(B1=0,C1=0)

在单元格 A2 中,我希望条件公式为

AND(B2=0,C2=0)

我正在寻找的是使用类似的条件公式对 整个列 进行编程

AND(BCURRENTROW()=0,CCURRENTROW()=0)

但显然语法不正确。

我怎样才能做到这一点?

【问题讨论】:

    标签: conditional-statements formula conditional-formatting libreoffice libreoffice-calc


    【解决方案1】:

    基于公式的条件格式有两个设置来确定它的应用位置和方式。

    首先是它适用的单元格范围。如果这是

    范围:A1:A1048576

    那么它适用于整个 A 列。

    其次是公式本身。确切地说,该公式中的单元格范围是相对的、绝对的还是混合的。与所有其他公式一样,例如,相对单元格引用为 A1。例如,绝对单元格引用是 $A$1。混合单元格引用可以是$A1,其中列A 是绝对的,但行是相对的,或者A$1,其中列是相对的,但行1 是绝对的。

    因此,应用于范围A1:A1048576 并具有公式AND($B1=0,$C1=0) 的条件格式应该可以满足您的要求。如您所见,该公式始终获取列 BC(绝对),但获取实际计算它的行​​(相对)。

    例子:

    【讨论】:

    • 感谢您的精彩回答,以及为什么它有效。顺便说一句,LibreOffice 中有一个错误,它用#REF 替换了 B1 和 C1 中的 1。第二次输入公式让它完全按照你的描述工作。再次感谢你;我真的很感激。
    【解决方案2】:

    如果您想在“B”列包含值(例如“XXX”)时用颜色绘制所有行,您可以这样做:

    格式->条件格式(添加)

    我们选择“公式”并输入: 搜索("XXX";$B2)>=0

    我们应用样式“好”(以绿色查看选定的行)

    然后我们选择我们想要启动的矩阵(重要!),例如: A2:H109

    现在我们看到 B 列包含绿色“XXX”的所有行。

    享受吧!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-13
      • 2017-01-20
      • 1970-01-01
      • 2013-09-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多