公式引用 Excel Table
Formula Referencing Excel Table
我正在使用 Excel 2013。
我有一个包含三列的 table:开始日期、结束日期和假期 - 包含一个公式的列,用于检查假期是否介于 开始日期 和 结束日期 之间。 开始日期 和 结束日期 列包含对计算日期的其他列的引用。 Holiday 列中的公式使用 Index
/Match
函数来查找假期列表(在单独的 sheet 上调用 SLA 假期)。此 table 在一周的时间跨度内有数千条记录,并且每天更新。
假日公式不起作用 - 它 returns FALSE
即使时间范围内有假期。在评估公式时,它表示 AND
函数的第一个逻辑是 FALSE
;然而,这是真的(9/3/2018 > 8/31/2018)。该公式正确计算了 AND
函数的第二个逻辑值。
当我将 table 对 开始日期 和 结束日期 的引用替换为对 [=] 之外的单元格的引用时64=] 包含这些日期,公式工作正常。
下面是 table 中几条记录的屏幕截图,显示了 3 列。我还包括了一个 HTML 版本用于复制能力。公式如下:
{=AND(INDEX('SLA Holidays'!$A:$A,MATCH(MIN(ABS('SLA Holidays'!$A:$A-[@[Start Date]])),ABS('SLA Holidays'!$A:$A-[@[Start Date]]),0))>[@[Start Date]],INDEX('SLA Holidays'!$A:$A,MATCH(MIN(ABS('SLA Holidays'!$A:$A-[@[Start Date]])),ABS('SLA Holidays'!$A:$A-[@[Start Date]]),0))<[@[End Date]])}
Start Date End Date Holiday
08/31/2018 9/4/2018 FALSE
08/31/2018 9/4/2018 FALSE
08/31/2018 9/4/2018 FALSE
当我使用完全相同的公式,但将 table 引用切换为包含相同日期的单元格引用时,该公式有效。这是更新后的公式:
{=AND(INDEX('SLA Holidays'!$A:$A,MATCH(MIN(ABS('SLA Holidays'!$A:$A-AC5)),ABS('SLA Holidays'!$A:$A-AC5),0))>AC5,INDEX('SLA Holidays'!$A:$A,MATCH(MIN(ABS('SLA Holidays'!$A:$A-AC5)),ABS('SLA Holidays'!$A:$A-AC5),0))<AD5)}
有没有办法使这个公式与 table 中的日期引用一起使用?
开始日期 和 结束日期 列包含用于计算日期的公式,而不仅仅是实际日期值。我更改了 Holiday 公式以包含 Value
函数,采用 table 列引用的值,这解决了错误。
我正在使用 Excel 2013。
我有一个包含三列的 table:开始日期、结束日期和假期 - 包含一个公式的列,用于检查假期是否介于 开始日期 和 结束日期 之间。 开始日期 和 结束日期 列包含对计算日期的其他列的引用。 Holiday 列中的公式使用 Index
/Match
函数来查找假期列表(在单独的 sheet 上调用 SLA 假期)。此 table 在一周的时间跨度内有数千条记录,并且每天更新。
假日公式不起作用 - 它 returns FALSE
即使时间范围内有假期。在评估公式时,它表示 AND
函数的第一个逻辑是 FALSE
;然而,这是真的(9/3/2018 > 8/31/2018)。该公式正确计算了 AND
函数的第二个逻辑值。
当我将 table 对 开始日期 和 结束日期 的引用替换为对 [=] 之外的单元格的引用时64=] 包含这些日期,公式工作正常。
下面是 table 中几条记录的屏幕截图,显示了 3 列。我还包括了一个 HTML 版本用于复制能力。公式如下:
{=AND(INDEX('SLA Holidays'!$A:$A,MATCH(MIN(ABS('SLA Holidays'!$A:$A-[@[Start Date]])),ABS('SLA Holidays'!$A:$A-[@[Start Date]]),0))>[@[Start Date]],INDEX('SLA Holidays'!$A:$A,MATCH(MIN(ABS('SLA Holidays'!$A:$A-[@[Start Date]])),ABS('SLA Holidays'!$A:$A-[@[Start Date]]),0))<[@[End Date]])}
Start Date End Date Holiday
08/31/2018 9/4/2018 FALSE
08/31/2018 9/4/2018 FALSE
08/31/2018 9/4/2018 FALSE
当我使用完全相同的公式,但将 table 引用切换为包含相同日期的单元格引用时,该公式有效。这是更新后的公式:
{=AND(INDEX('SLA Holidays'!$A:$A,MATCH(MIN(ABS('SLA Holidays'!$A:$A-AC5)),ABS('SLA Holidays'!$A:$A-AC5),0))>AC5,INDEX('SLA Holidays'!$A:$A,MATCH(MIN(ABS('SLA Holidays'!$A:$A-AC5)),ABS('SLA Holidays'!$A:$A-AC5),0))<AD5)}
有没有办法使这个公式与 table 中的日期引用一起使用?
开始日期 和 结束日期 列包含用于计算日期的公式,而不仅仅是实际日期值。我更改了 Holiday 公式以包含 Value
函数,采用 table 列引用的值,这解决了错误。