0

尝试在 Excel 中创建甘特图外观。我有两列,A 和 B(A = 开始日期,B = 结束日期)。

在页面顶部(第2行)我有一列,其中包含项目每个日期的日期(为便于阅读,自定义格式为“d”,第 1 行中的月份名称。)

如果:

A[此行]中的值大于或等于[此列]2。

B[此行]中的值小于或等于[此列]2。

我已经挖掘了一些推荐 ADDRESS() 和 INDIRECT() 的答案,但我很难让它发挥作用。有什么想法吗?

4

3 回答 3

1

您可以使用AND来组合条件。我假设“甘特图”从 C 列开始,这里的活动行是 2。

选择 C2 和该行的其余部分(根据月份的天数,选择 31、30 或 28/29)。

使用公式提取条件格式并输入:

=AND(C2>=$A2,C2<=$B2)

选择格式填充绿色,应该这样做

于 2013-09-13T15:37:19.397 回答
1

在条件格式中,如果您在公式中使用您选择的第一个单元格,它会自动将其转换为相对公式。

例如,如果您使用公式:=A1>5并选择单元格A1:B5,它将检查每个单元格以查看其是否 >5 而不仅仅是单元格A1(因此它会自动为您增加行和列)。通常这比使用更可取,indirect但有时indirect是必要的。

因此,indirect您可以使用row()column()功能。所以在你的例子中:

A[此行]中的值大于或等于[此列]2。

B[此行]中的值小于或等于[此列]2。

看起来像:

=AND(INDIRECT("A"&ROW()) >= INDIRECT(CHAR(COLUMN()+64)&"2"), INDIRECT("B"&ROW()) <= INDIRECT(CHAR(COLUMN()+64)&"2"))

希望这会有所帮助

于 2013-09-13T15:50:25.053 回答
0

ADDRESS没有or对我有用INDIRECT。这是条件格式中的公式。如果我必须猜测发生了什么,很可能是您没有放置正确的锚点 ( $)。

=AND(C$2>=$A3,C$2<=$B3)
于 2013-09-15T17:03:25.027 回答