一千嵌套if/and/or
A thousand nested if/and/or
我有一个巨大的“sheet 应用程序”,在一行中,其中一个名为“价格”的字段在公式栏中字面上有 433 个“IF”语句。基本上,有很多选项,基于它们,我必须更改字段中的价格(如果用户选择选项 1,设置价格 1,等等)。我只是想知道是否有更理智的写法,因为
- 真的很累而且看不懂
- 它通常甚至不起作用,因为我不得不时不时地抛出一个 IF(AND()) 和 IF(OR()),这会破坏我的工作流程,并使调试变得不可能。
非常感谢任何帮助。
而不是 AND
你可以使用乘法 *
而不是 OR
使用和 +
- 这样你就可以在需要时轻松使用 ARRAYFORMULA
.也可以在这里查看:https://webapps.stackexchange.com/q/123729/186471 for alternatives
更新
试试这个而不是你的 pstebin 公式:
=ARRAYFORMULA(IFERROR(IF((D24<>"")*(E24=""),
VLOOKUP(D24, {data!A:B; data!F1:G23}, 2, 0),
VLOOKUP(D24&E24, {{data!F24:F37&data!F50; data!F28&data!F49},
{data!I23; data!I23; data!I23; data!I23:I29;
data!I29; data!I29; data!I29; data!I30; data!G28}}, 2, 0))))
和数据sheet:
我有一个巨大的“sheet 应用程序”,在一行中,其中一个名为“价格”的字段在公式栏中字面上有 433 个“IF”语句。基本上,有很多选项,基于它们,我必须更改字段中的价格(如果用户选择选项 1,设置价格 1,等等)。我只是想知道是否有更理智的写法,因为
- 真的很累而且看不懂
- 它通常甚至不起作用,因为我不得不时不时地抛出一个 IF(AND()) 和 IF(OR()),这会破坏我的工作流程,并使调试变得不可能。
非常感谢任何帮助。
而不是 AND
你可以使用乘法 *
而不是 OR
使用和 +
- 这样你就可以在需要时轻松使用 ARRAYFORMULA
.也可以在这里查看:https://webapps.stackexchange.com/q/123729/186471 for alternatives
更新
试试这个而不是你的 pstebin 公式:
=ARRAYFORMULA(IFERROR(IF((D24<>"")*(E24=""),
VLOOKUP(D24, {data!A:B; data!F1:G23}, 2, 0),
VLOOKUP(D24&E24, {{data!F24:F37&data!F50; data!F28&data!F49},
{data!I23; data!I23; data!I23; data!I23:I29;
data!I29; data!I29; data!I29; data!I30; data!G28}}, 2, 0))))
和数据sheet: