Excel 嵌套如果太多参数无需查找即可修复
Excel nested if too many arguments fix without lookup
我知道以前有人问过这个问题。我想知道是否可以在不使用带索引功能的查找的情况下修复它。我查看了 this 问题并尝试添加 AND 但没有成功。
这是我的公式:
=IF(C49="", "", IF(R49="2 months/mois",DATE(YEAR(C49),MONTH(C49)+2,DAY(C49)), IF(R49="3
months/mois",DATE(YEAR(C49),MONTH(C49)+3,DAY(C49)), IF(R49="4
months/mois",DATE(YEAR(C49),MONTH(C49)+4,DAY(C49)), IF(R49="5
months/mois",DATE(YEAR(C49),MONTH(C49)+5,DAY(C49)),IF(R49="6
months/mois",DATE(YEAR(C49),MONTH(C49)+6,DAY(C49)), IF(R49="7
months/mois",DATE(YEAR(C49),MONTH(C49)+7,DAY(C49)), IF(R49="8
months/mois",DATE(YEAR(C49),MONTH(C49)+8,DAY(C49)), IF(R49="9
months/mois",DATE(YEAR(C49),MONTH(C49)+9,DAY(C49)), IF(R49="10
months/mois",DATE(YEAR(C49),MONTH(C49)+10,DAY(C49)), IF(R49="11
months/mois",DATE(YEAR(C49),MONTH(C49)+11,DAY(C49)),IF(R49="12
months/mois",DATE(YEAR(C49),MONTH(C49)+12,DAY(C49)), "0"))))))))))))
如何修改此公式以免出现太多参数错误?
您可以使用以下方法避免使用多个 IF 语句:
=DATE(YEAR(C49),MONTH(C49)+LEFT(R49,2),DAY(C49))
这将自动从 R49
单元格的前两个字符开始添加月份。
只需要添加判断C49是否为空的条件即可。
编辑:
如果你想检查C49和R49是否为空你可以使用:
=IF(C49="","",IFERROR(DATE(YEAR(C49),MONTH(C49)+LEFT(R49,2),DAY(C49)),"0"))
if C49 is 31st Dec and you add 2 months what result do you expect?
如果您希望它是 2 月 28 日,那么您应该使用@barry houdini 的方法。我的公式(基于您的嵌套 IF)将在 3 月 3 日 return。
我知道以前有人问过这个问题。我想知道是否可以在不使用带索引功能的查找的情况下修复它。我查看了 this 问题并尝试添加 AND 但没有成功。
这是我的公式:
=IF(C49="", "", IF(R49="2 months/mois",DATE(YEAR(C49),MONTH(C49)+2,DAY(C49)), IF(R49="3 months/mois",DATE(YEAR(C49),MONTH(C49)+3,DAY(C49)), IF(R49="4 months/mois",DATE(YEAR(C49),MONTH(C49)+4,DAY(C49)), IF(R49="5 months/mois",DATE(YEAR(C49),MONTH(C49)+5,DAY(C49)),IF(R49="6 months/mois",DATE(YEAR(C49),MONTH(C49)+6,DAY(C49)), IF(R49="7 months/mois",DATE(YEAR(C49),MONTH(C49)+7,DAY(C49)), IF(R49="8 months/mois",DATE(YEAR(C49),MONTH(C49)+8,DAY(C49)), IF(R49="9 months/mois",DATE(YEAR(C49),MONTH(C49)+9,DAY(C49)), IF(R49="10 months/mois",DATE(YEAR(C49),MONTH(C49)+10,DAY(C49)), IF(R49="11 months/mois",DATE(YEAR(C49),MONTH(C49)+11,DAY(C49)),IF(R49="12 months/mois",DATE(YEAR(C49),MONTH(C49)+12,DAY(C49)), "0"))))))))))))
如何修改此公式以免出现太多参数错误?
您可以使用以下方法避免使用多个 IF 语句:
=DATE(YEAR(C49),MONTH(C49)+LEFT(R49,2),DAY(C49))
这将自动从 R49
单元格的前两个字符开始添加月份。
只需要添加判断C49是否为空的条件即可。
编辑:
如果你想检查C49和R49是否为空你可以使用:
=IF(C49="","",IFERROR(DATE(YEAR(C49),MONTH(C49)+LEFT(R49,2),DAY(C49)),"0"))
if C49 is 31st Dec and you add 2 months what result do you expect?
如果您希望它是 2 月 28 日,那么您应该使用@barry houdini 的方法。我的公式(基于您的嵌套 IF)将在 3 月 3 日 return。