如果单元格 $D5 中的状态为“等待反馈”,我想使用数据条格式(颜色为透明)将单元格 $H5 中的日期与今天的日期和条件格式单元格 $H5 进行比较。
如果日期是两周后,则使用小彩条,但如果日期是今天,则将使用最长的彩条(几乎是满的)。这些将是我的最高和最低参数。
我认为它可能看起来像一个可怕的例子......
=If($D..="Awaiting feedback",(Now(DAYS($H..)+14)). SHORTEST COLOUR BAR
=If($D..="Awaiting feedback",(Now(DAYS($H..))) LONGEST COLOUR BAR
...如果我让任何人的眼睛流血,我深表歉意。
谢谢迈克
答案1
该解决方案分为两个部分,还有一个我可能更喜欢的替代方案。
首先,您无法直接在数据栏中执行所有复杂的公式,所以不要尝试。
转到包含截止日期的单元格并应用标准数据栏。现在转到条件格式 > 管理规则 > 选择数据栏规则并转到编辑规则。不要将最短的条形图用于最低值,将最长的条形图用于最高值,而是选择将指定数字(或公式,这无关紧要)设置为最短。对于数字,请输入 =TODAY()+14。现在,您的最短条形图将用于未来 14 天或更晚的任何日期。
对于最长的条形,再次输入数字或公式并简单地输入 =TODAY(),因此今天或更早的任何日期都会有最长的条形。
单击“确定”并“应用”。现在您的条形图应该正确了,但它们也会显示在任何状态行中。
聪明之处(IMHO):现在选择相同的单元格,并根据公式添加新的条件格式规则:=$D2<>“Awaiting Feedback”(您不需要任何混乱的 IF 或任何东西,只需要一个直接的陈述,即 True 或 False)
您不需要任何格式,只需保留它,OK。在规则管理器窗口中,确保此新规则位于数据条规则上方(如有必要,请使用向上箭头移动它)并勾选“若为真则停止”
现在,如果该行不是等待反馈的行,则该规则为真,并且它停止处理任何其他规则(对于受影响的相同单元格,其他独立规则也可以)。对于等待反馈的行,您将获得数据条,其中最长的条是最紧急的。
好吧。现实情况是这样的。
除非真的必须,否则我不会这样做。我会使用辅助列(例如 G)和公式来检查状态,如果我想标记它,我会在其中输入截止日期的相关值 - today()。然后在这些值上使用标准数据条(也许可以切换最长和最短,这样今天的工作就有更长的条,不需要公式)。使用规则上的勾选框仅显示条,这样数字本身就会消失。我更喜欢这样,这样我就可以对已经过期的任何内容使用不同的规则(可能只是单一颜色填充),使其比今天到期的事情更重要。
您可以在日期单元格上执行此操作,但应用的格式越多,实际读取日期就越困难,因此辅助列在这里很有用,并使条件格式部分更加“正常”
答案2
我目前正在与另一个论坛上的某人一起处理这个问题,我想我应该把它留在这里,这样你就可以看到我们正在做什么——以及我现在遇到的部分。
(来自 utter access 的 aali dad 说)
选择 D 列和 H 列中的数据,转到格式>>条件格式。选择条件 1 公式为:
=IF($D2="Awaiting Feedback",IF($H2>TODAY()+14,TRUE,FALSE),FALSE)
并根据需要设置单元格颜色格式。然后使用以下公式添加第二个条件 = Quote:
=IF($D2="Awaiting Feedback",IF($H2=TODAY(),TRUE,FALSE),FALSE)
我现在被微软的消息困住了:“您不能在颜色标度、数据条和图标集的条件格式标准中使用相对引用”。
我现在正在努力理解这个消息——我尝试使用整个范围 $D2:$D126,它允许我这样做,但我没有看到结果。
无论如何,我想随时向您通报情况——希望它能给你带来启发。
谢谢迈克。
答案3
只是更新。我认为目前还做不到。条件格式无法识别某些单元格引用。
我已经关闭了这个问题。