为什么将此 Google Sheets 公式设为 ARRAYFORMULA 会改变其行为?
Why does making this Google Sheets formula an ARRAYFORMULA change it's behavior?
此公式适用于每行:
=(IF(today()-D2 > 365,text(D2:D,"mmm yyyy"),text(D2:D,"mmm d")))
但是如果我把它变成如下所示的 ARRAYFORMUAL,它总是 returns text(D2:D,"mmm yyyy") 即使 today()-D2 > 365 为假。
=arrayformula(IF(LEN(D2:D) = 0, "", (IF(today()-D2 > 365,text(D2:D,"mmm yyyy"),text(D2:D,"mmm d")))))
见下方截图。 D 列是来源日期。 F 列是 ARRAYFORMULA。 G 列是标准公式(每行硬编码与 ARRAYFORMULA)。
我希望 F 列中的 ARRAYFORMUAL 复制 G 列中的结果。
尝试:
=ARRAYFORMULA(IF(LEN(D2:D), IF((TODAY()-D2:D)>365,
TEXT(D2:D, "mmm yyyy"), TEXT(D2:D, "mmm d")), ))
此公式适用于每行:
=(IF(today()-D2 > 365,text(D2:D,"mmm yyyy"),text(D2:D,"mmm d")))
但是如果我把它变成如下所示的 ARRAYFORMUAL,它总是 returns text(D2:D,"mmm yyyy") 即使 today()-D2 > 365 为假。
=arrayformula(IF(LEN(D2:D) = 0, "", (IF(today()-D2 > 365,text(D2:D,"mmm yyyy"),text(D2:D,"mmm d")))))
见下方截图。 D 列是来源日期。 F 列是 ARRAYFORMULA。 G 列是标准公式(每行硬编码与 ARRAYFORMULA)。
我希望 F 列中的 ARRAYFORMUAL 复制 G 列中的结果。
尝试:
=ARRAYFORMULA(IF(LEN(D2:D), IF((TODAY()-D2:D)>365,
TEXT(D2:D, "mmm yyyy"), TEXT(D2:D, "mmm d")), ))