尝试在 Excel 中创建甘特图外观。我有两列,A 和 B(A = 开始日期,B = 结束日期)。
在页面顶部(第2行)我有一列,其中包含项目每个日期的日期(为便于阅读,自定义格式为“d”,第 1 行中的月份名称。)
如果:
A[此行]中的值大于或等于[此列]2。
和
B[此行]中的值小于或等于[此列]2。
我已经挖掘了一些推荐 ADDRESS() 和 INDIRECT() 的答案,但我很难让它发挥作用。有什么想法吗?
尝试在 Excel 中创建甘特图外观。我有两列,A 和 B(A = 开始日期,B = 结束日期)。
在页面顶部(第2行)我有一列,其中包含项目每个日期的日期(为便于阅读,自定义格式为“d”,第 1 行中的月份名称。)
如果:
A[此行]中的值大于或等于[此列]2。
和
B[此行]中的值小于或等于[此列]2。
我已经挖掘了一些推荐 ADDRESS() 和 INDIRECT() 的答案,但我很难让它发挥作用。有什么想法吗?
您可以使用AND
来组合条件。我假设“甘特图”从 C 列开始,这里的活动行是 2。
选择 C2 和该行的其余部分(根据月份的天数,选择 31、30 或 28/29)。
使用公式提取条件格式并输入:
=AND(C2>=$A2,C2<=$B2)
选择格式填充绿色,应该这样做
在条件格式中,如果您在公式中使用您选择的第一个单元格,它会自动将其转换为相对公式。
例如,如果您使用公式:=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"))
希望这会有所帮助
ADDRESS
没有or对我有用INDIRECT
。这是条件格式中的公式。如果我必须猜测发生了什么,很可能是您没有放置正确的锚点 ( $
)。
=AND(C$2>=$A3,C$2<=$B3)