在数组函数中IF语句logical_test中有{1,0}的影响是什么?

时间:2015-06-20 16:18:36

标签: excel excel-formula

基于this answer,我发现了如何制作加权趋势线:

{=LINEST(B2:B7*C2:C7^0.5,IF({1,0},1,A2:A7)*C2:C7^0.5,0)}

但我不明白这个公式是如何运作的。

Excel使用IF({1,0},1,x)做什么?什么是{1,0}

1 个答案:

答案 0 :(得分:2)

它为A2中的每一行运行If语句两次:A7,一次为1,一次为0 - 即一次为真,一次为假。

因此,如果范围A2:A7是1到6,你的答案将是一个长度为12位的数组,并且会在If语句为true之间交替,从而给出1和false,从而为您提供A2中的值: A7:

{的 1 下,1,的 1 下,如图2所示,<强> 1 下,3,<强> 1 下,如图4所示,<强> 1 下,如图5所示,<强> 1 下,6}

粗体 1 是if语句使用{1,0}的0部分而非粗体1到6的时候if语句使用1部分。

如果您一步一步地完成它,它会执行以下操作: (记住,对于excel,1 = true,0 = false)

if(1,1,A2) 'always 1
if(0,1,A2) 'always A2

if(1,1,A3) 'always 1
if(0,1,A3) 'always A3

if(1,1,A4) 'always 1
if(0,1,A4) 'always A4

If(1,1,A5) 'always 1
If(0,1,A5) 'always A5

If(1,1,A6) 'always 1
If(0,1,A6) 'always A6

{1,A2,1,A3,1,A4,1,A5,1,A6}