1

我希望你能在这个问题上帮助我。

我目前正在使用 Excel 2007,并且正在为我们的团队创建一个动态计划/时间表。到目前为止,一切进展顺利。

现在不幸的是,我遇到了条件格式的问题。我正在格式化单元格,以便以图形方式显示工作人员的当前状态。我正在使用带有公式示例的条件格式:=OFFSET(DataStart17D;COLUMN();ROW()-49;1;1)="PM"

现在我正在尝试使用 2 种颜色的渐变填充来应用 2 个条件,例如:=AND(IF(OFFSET(DataStart17D;COLUMN();ROW()-49;1;1)="PM";TRUE;FALSE);IF(OFFSET(DataStart17D;COLUMN();ROW()-52;1;1)="AM";TRUE;FALSE)

问题是,一旦我使用 IF 或 AND 语句,就根本不应用任何条件。我已将上述公式应用于单元格本身并收到“TRUE”作为条件。

奇怪的是,如果我应用=OFFSET(DataStart17D;COLUMN();ROW()-49;1;1)="PM"它可以正常工作,如果我=IF(OFFSET(DataStart17D;COLUMN();ROW()-49;1;1)="PM";TRUE;FALSE)再次使用,则不适用任何条件。

我在网上搜索了一个解决方案,但还没有找到一个:(

如果有人能帮我解决这个问题,我会很高兴:)

最好的问候,理查德 J. 达纳

4

1 回答 1

1

您不需要条件格式公式中的 IF 语句和 TRUE 和 FALSE。就其性质而言,该公式是有条件的。

尝试类似:

=AND(OFFSET(DataStart17D;COLUMN();ROW()-49;1;1)="PM";OFFSET(DataStart17D;COLUMN();ROW()-49;1;1)="AM")

一旦你这样做,你会看到一个额外的问题。AND 函数中的两个语句是互斥的,因此它永远不会评估为 TRUE。

编辑:

AND该语句和多个OFFSET使用ROW或的语句似乎确实存在问题COLUMN

请注意,这里我将使用逗号而不是分号作为函数参数分隔符,否则太难转换了。您必须将逗号改回分号。

另请注意,您不需要原始问题中 ROW 或 COLUMN 函数中的最后两个参数。您将它们设置为 1 的高度和宽度,这是默认值,并且是可选的。

这是一个简化的示例:

如果您执行以下操作:

OFFSET(DataStart17D,ROW()+1,COLUMNS())="PM"

它将在工作表和条件格式中评估为 TRUE

如果您执行以下操作:

=AND(OFFSET(DataStart17D,ROW()+1,COLUMNS())="PM",OFFSET(DataStart17D,ROW()+1,COLUMNS())="PM")

这只是重复相同的语句两次,它将在工作表中评估为 TRUE,但不会触发条件格式。

以上所有内容正如您在问题中所说的那样。我认为可行的答案是改用 ROWS 和 COLUMNS ,如下所示:

=AND(OFFSET(DataStart17D,ROWS($1:2)+1,COLUMNS($A:A))="PM",OFFSET(DataStart17D,ROWS($1:2)+1,COLUMNS($A:A))="AM")

以上将是A2的公式。请注意,括号内的第一行或第一列以美元符号锚定。这为您提供了 A1 中的行数或列数,实际上与 ROW 或 COLUMN 函数相同。

于 2013-03-04T00:22:28.387 回答