如何从 LOOKUP 中获取 NETWORKDAYS 的假期范围?
How do I get the range of holidays for NETWORKDAYS from a LOOKUP?
我正在尝试使用 HLOOKUP 从另一个 sheet 获取假期列表,以根据国家/地区找到适当的行,从而为 NETWORKDAYS 函数获取假期列表。但是,当我尝试这样做时,我只是收到一个 #REF 错误,提示 HLOOKUP 计算结果超出范围。
我有一个名为 Billable Days 的 sheet,它有一个基于国家/地区的假期列表。单元格 J14:N14 包含国家/地区,在下面的列表中是一堆假期日期。它们是不同的范围。例如,美国假期的范围是 J15:J32.
在另一个 sheet 中,我需要将 R 列中基于国家/地区的正确假期提取到 NETWORKDAYS 函数中。
首先我尝试了:
=NETWORKDAYS(B2,S1,HLOOKUP($R2,'Billable Days'!$J:$N,15:50,FALSE))
这给了我一个#VALUE 错误提示:"An array value could not be found"
然后我尝试了:
=NETWORKDAYS(B2,S1,ArrayFormula(HLOOKUP($R2,'Billable Days'!$J:$N,15:50,FALSE)))
这给出了另一个值错误。
终于试过了
=NETWORKDAYS(B2,S1,ArrayFormula(HLOOKUP($R2,'Billable Days'!$J:$N,{15,16,17},FALSE)))
只是为了测试一下,看看我是否可以获得任何值,并收到一个 #REF 错误,上面写着 "HLOOKUP evaluates to an out of bounds range"
谁能帮我设计这个功能?我什至不确定 HLOOKUP 是否是去这里的方式,但这是我想到的唯一方式。
编辑
为了清楚起见并根据要求,我创建了一个 sheet 来证明我的意思。找到它 here.
您将看到顾问和计费天数 sheet。您可以看到我编写的用于根据开始日期和结束日期计算 NETWORKDAYS 的函数。但是,在该函数中,我想将 Billable Days sheet 中的适当假期列表添加到 NETWORKDAYS 函数中作为第三个参数。我需要查看国家/地区列并从计费天数 spreadsheet 中找到合适的假期日期,然后将其插入 NETWORKDAYS 调用。我不知道如何完成此操作。
以下是构建您想要的内容的方法。
在 L2 的顾问 sheet 上,我放置了 =address(2,match(E2, 'Billable Days'!$A:$F,0))
,它找到了所需国家的列索引,并用行 B 为它构造了一个正确的单元格名称。然后在 M2 中,我说 ="'Billable Days'!"&L2&":"&mid(L2,2,1)
到构造一个引用所需假期范围的字符串,如 'Billable Days'!$B:B
。 L 和 M 列可以为所有人拖下。然后,当您想要第二行中顾问的假期列表时说 =INDIRECT(M2)
或第 5 行中的 =INDIRECT(M5)
,或者如果您将其构建到另一个公式中,请删除 = 符号。当找不到国家/地区时,您可以稍微清理一下以保持优雅,或者可能制作一个 ArrayFormula 并避免拖动。
我正在尝试使用 HLOOKUP 从另一个 sheet 获取假期列表,以根据国家/地区找到适当的行,从而为 NETWORKDAYS 函数获取假期列表。但是,当我尝试这样做时,我只是收到一个 #REF 错误,提示 HLOOKUP 计算结果超出范围。
我有一个名为 Billable Days 的 sheet,它有一个基于国家/地区的假期列表。单元格 J14:N14 包含国家/地区,在下面的列表中是一堆假期日期。它们是不同的范围。例如,美国假期的范围是 J15:J32.
在另一个 sheet 中,我需要将 R 列中基于国家/地区的正确假期提取到 NETWORKDAYS 函数中。
首先我尝试了:
=NETWORKDAYS(B2,S1,HLOOKUP($R2,'Billable Days'!$J:$N,15:50,FALSE))
这给了我一个#VALUE 错误提示:"An array value could not be found"
然后我尝试了:
=NETWORKDAYS(B2,S1,ArrayFormula(HLOOKUP($R2,'Billable Days'!$J:$N,15:50,FALSE)))
这给出了另一个值错误。
终于试过了
=NETWORKDAYS(B2,S1,ArrayFormula(HLOOKUP($R2,'Billable Days'!$J:$N,{15,16,17},FALSE)))
只是为了测试一下,看看我是否可以获得任何值,并收到一个 #REF 错误,上面写着 "HLOOKUP evaluates to an out of bounds range"
谁能帮我设计这个功能?我什至不确定 HLOOKUP 是否是去这里的方式,但这是我想到的唯一方式。
编辑
为了清楚起见并根据要求,我创建了一个 sheet 来证明我的意思。找到它 here.
您将看到顾问和计费天数 sheet。您可以看到我编写的用于根据开始日期和结束日期计算 NETWORKDAYS 的函数。但是,在该函数中,我想将 Billable Days sheet 中的适当假期列表添加到 NETWORKDAYS 函数中作为第三个参数。我需要查看国家/地区列并从计费天数 spreadsheet 中找到合适的假期日期,然后将其插入 NETWORKDAYS 调用。我不知道如何完成此操作。
以下是构建您想要的内容的方法。
在 L2 的顾问 sheet 上,我放置了 =address(2,match(E2, 'Billable Days'!$A:$F,0))
,它找到了所需国家的列索引,并用行 B 为它构造了一个正确的单元格名称。然后在 M2 中,我说 ="'Billable Days'!"&L2&":"&mid(L2,2,1)
到构造一个引用所需假期范围的字符串,如 'Billable Days'!$B:B
。 L 和 M 列可以为所有人拖下。然后,当您想要第二行中顾问的假期列表时说 =INDIRECT(M2)
或第 5 行中的 =INDIRECT(M5)
,或者如果您将其构建到另一个公式中,请删除 = 符号。当找不到国家/地区时,您可以稍微清理一下以保持优雅,或者可能制作一个 ArrayFormula 并避免拖动。