2013-03-03 66 views
1

我希望你能帮助我解决这个问题。Excel 2007(条件格式)AND&IF

我目前正在使用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)没有条件适用。

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

真的会高兴,如果有人可以帮助我在这一个:)

最好的问候, 理查德·达纳

回答

1

对于条件格式公式,您不需要IF Statment和TRUE以及FALSE。就其性质而言,该公式是有条件的。

尝试类似:

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

一旦你这样做,你会看到另外一个问题。 AND函数中的两个语句是互斥的,所以它永远不会计算为TRUE。

编辑:

有似乎是与AND声明和使用ROWCOLUMN

请注意,我要改用逗号分号作为函数参数多OFFSET语句的问题分隔符,否则转换太难了。您必须将逗号更改为分号。

另请注意,在原始问题中,您不需要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函数相同的事情。

+0

您好Doug感谢您的快速回复。我需要改变这个问题,第二个偏移位于“-52”位置。我很遗憾地检查过它没有解决问题。我也检查了条件。每个数据集有6列(Datastart01,Datastart02)。例如,列A =状态,列B =从时间,列C =到时间,列D =状态,列E =从时间,列F =到时间。如果A中的条件是F并且D是VM,则其填充是渐变双色,否则使用一种颜色 – 2013-03-04 07:24:47

+0

我已在不同的工作表上测试过。我做了类似的积木,仍然没有显示结果。 Excel 2007无法将条件格式中的“OFFSET”和(布尔)组合起来吗? – 2013-03-04 12:27:48

+0

好吧,我明白你现在在说什么。似乎有一个错误,但不得不与列和行。我会用可能的解决方案编辑我的答案。 – 2013-03-04 16:04:16