我尝试在excel中使用Networkdays公式,但无论是使用单元格值还是直接输入值,返回的值都不正确。
=NETWORKDAYS(1/14/2023,H13)
返回32091,单元格的格式设置为General,H13是包含“1/2/2023”的Date单元格直接使用公式
=NETWORKDAYS(1/14/2023,1/2/2023)
我得到的结果是0。我正在使用Office 365。
wb1gzix01#
这是由于格式。从NETWORKDAYS() help开始:要点:日期应使用DATE函数输入,或作为其他公式或函数的结果输入。例如,使用DATE(2012,5,23)表示2012年5月23日。如果日期作为文本输入,则可能会出现问题。如果您使用
=NETWORKDAYS(DATE(2023,1,15),H13)
以及可选地,使用DATE() function:
=DATE(2023,2,1)
你会得到13。为确保您不会遇到日期格式方面的任何问题(例如01/02/2023在英国/美国之间不明确),请考虑使用DATEVALUE()。
68bkxrlz2#
除了@SuperUser的答案外,您还可以直接使用字符串:
=NETWORKDAYS("1/14/2023",H13) =NETWORKDAYS("1/14/2023","1/2/2023")
当然,问题是如果Excel文件在另一个环境中使用,具有不同的日期格式,因为字符串不会自动转换。如果H13的内容碰巧是一个字符串,即使您使用=NETWORKDAYS(DATE(2023,1,14),H13),您仍然会有这个问题,所以您需要记住这一点。在您的情况下,这不是一个问题,或者这将需要不同的处理。如果没有引号,您在这里所做的就是除法。您是在告诉Excel先做1/14,然后再做/2023。将其单独放在公式单元格(=1/24/2023)中,您就会看到。
H13
=NETWORKDAYS(DATE(2023,1,14),H13)
1/14
/2023
=1/24/2023
2条答案
按热度按时间wb1gzix01#
这是由于格式。
从NETWORKDAYS() help开始:
要点:日期应使用DATE函数输入,或作为其他公式或函数的结果输入。例如,使用DATE(2012,5,23)表示2012年5月23日。如果日期作为文本输入,则可能会出现问题。
如果您使用
以及可选地,使用DATE() function:
你会得到13。
为确保您不会遇到日期格式方面的任何问题(例如01/02/2023在英国/美国之间不明确),请考虑使用DATEVALUE()。
68bkxrlz2#
除了@SuperUser的答案外,您还可以直接使用字符串:
当然,问题是如果Excel文件在另一个环境中使用,具有不同的日期格式,因为字符串不会自动转换。如果
H13
的内容碰巧是一个字符串,即使您使用=NETWORKDAYS(DATE(2023,1,14),H13)
,您仍然会有这个问题,所以您需要记住这一点。在您的情况下,这不是一个问题,或者这将需要不同的处理。如果没有引号,您在这里所做的就是除法。您是在告诉Excel先做
1/14
,然后再做/2023
。将其单独放在公式单元格(=1/24/2023
)中,您就会看到。