如何应用特定于每一行的条件格式?

如何应用特定于每一行的条件格式?

在我的工作表中,我想应用一些条件格式,当以下情况属实时,它会提醒我:

IF (len(J7) + len(h14) + len(i14) > 256) = TRUE: apply some formatting on I14.
IF (len(J7) + len(h15) + len(i15) > 256) = TRUE: apply some formatting on I15.
IF (len(J7) + len(h16) + len(i16) > 256) = TRUE: apply some formatting on I16.
IF (len(J7) + len(h18) + len(i18) > 256) = TRUE: apply some formatting on I18.
IF (len(J7) + len(h19) + len(i19) > 256) = TRUE: apply some formatting on I19.
IF (len(J7) + len(h20) + len(i20) > 256) = TRUE: apply some formatting on I20.

...依此类推,直到无穷大。

我正在制作一个包含三个组件的字符串,第一个组件始终位于 J7 中,然后它是每行的“h”和“i”单元格的组合,从第 14 行开始一直向下。如果该特定行上的字符串超过 256 个字符,我希望对该行发出某种通知。

我无法使用条件格式工具使其工作。我选择要格式化的列,然后在条件格式工具框中写入公式,并使其在第 14 行上工作,就像我希望的那样。但是当我检查第 15 行上的单元格时,评估第 14 行单元格的规则相同。基本上,我所做的就是如果第一行满足条件,则对我选择的所有行应用条件格式。

有任何想法吗?

它不必通过条件格式来解决.. vba 或其他东西也可以同样有效..

答案1

我没看出其中的规律。

IF (len(J7) + len(h14) + len(i14) > 256) = TRUE: apply some formatting on I14.
IF (len(J7) + len(h15) + len(i15) > 256) = TRUE: apply some formatting on I15.
IF (len(J7) + len(h16) + len(i16) > 256) = TRUE: apply some formatting on I16.
IF (len(J8) + len(h18) + len(i18) > 256) = TRUE: apply some formatting on I18.
IF (len(J9) + len(h19) + len(i19) > 256) = TRUE: apply some formatting on I19.
IF (len(J20) + len(h20) + len(i20) > 256) = TRUE: apply some formatting on I20.

这是你的实际模式吗?

IF (len(J14) + len(h14) + len(i14) > 256) = TRUE: apply some formatting on I14.
IF (len(J15) + len(h15) + len(i15) > 256) = TRUE: apply some formatting on I15.
IF (len(J16) + len(h16) + len(i16) > 256) = TRUE: apply some formatting on I16.
IF (len(J18) + len(h18) + len(i18) > 256) = TRUE: apply some formatting on I18.
IF (len(J19) + len(h19) + len(i19) > 256) = TRUE: apply some formatting on I19.
IF (len(J20) + len(h20) + len(i20) > 256) = TRUE: apply some formatting on I20.

答案2

规则是,你需要应用适用于左上角单元格范围 - Excel 将自动调整范围结果的公式,就像公式被复制到工作表中一样,因此如果您选择一个范围,I14:I1000则可以应用正确的公式I14,即

=LEN(J$7&H14&I14)>256

因为我在 J7 值中使用了 $,这会将行“固定”在 7,而其他行将递增。您看不到这一点,但这就是它内部的工作方式。

注意:你不需要 IF 语句,只需要一个结果为TRUE或的“测试”FALSE

答案3

选择您想要影响的列,然后使用此公式。

=(LEN($J$7)+LEN($H1)+LEN($I1))>256

相关内容