创build一个从命名表中select范围并返回产品的公式

我有一个名为Table_inflation的表,名为“Inflation Rates”。 它持有每年的通货膨胀因素,如下所示:

在这里输入图像说明

在另一张表“Lines Detail”中,我有一个单元格,我想填充复合通货膨胀率DL5 – >: 在这里输入图像说明

要find目标通货膨胀数据的哪一列,我使用表名的第一个单词,例如“Lines Detail”变成“Lines”。

要查找年份的范围,我将使用开始年份,例如2015年,结束年份将是列标题中的第一个数字,例如,如果“2017 – 2018年”使用2017年。

我的问题是,如果我有这些variables,我怎么能把它们放在一个公式“行细节”第5行? 例如获取通货膨胀数据并将它们相乘。

[更新]

=PRODUCT(INDEX(Table_Inflation[Lines], MATCH(INT(LEFT($DL$6,4)), Table_Inflation[Year], 0)):INDEX(Table_Inflation[Lines], MATCH(INT(LEFT(DL$6,4)), Table_Inflation[Year], 0))) 

所以,你可以看到我已经设置了第一个索引,总是find2015年的第一列标题,并将string转换为整数。

我几乎可以使用自动填充和拖动公式复制到其他年份,但它将Table_Inflation列名称更改为下一列名称,例如,我将公式拖到一个单元格的右侧,“线条”成为“点”和“年“行”

 =PRODUCT(INDEX(Table_Inflation[Points], MATCH(INT(LEFT($DL$6,4)), Table_Inflation[Lines], 0)):INDEX(Table_Inflation[Points], MATCH(INT(LEFT(DM$6,4)), Table_Inflation[Lines], 0))) 

有没有办法设置这些,所以他们不会改变?

– 要查找年份的范围,我将使用开始年份,例如2015年
– 我怎样才能将它们放在“线条细节”第5行的公式中? 例如获取通货膨胀数据并将它们相乘。

PRODUCT函数会将每个单元格与该范围内的其他每个单元格相乘。将其视为SUMPRODUCT而不添加。

使用INDEX函数来获取范围的开始和结束。 例如,这两个公式是完全一样的东西:

 =SUM(A2:A9) =SUM(INDEX(A:A, 2):INDEX(A:A, 9)) 

如果你想知道,那个技巧不适用于VLOOKUP或HLOOKUP函数。 那些只从查找返回值,而不是单元格引用。

在“Lines Detail”中,CZ5作为标准配方,

 =PRODUCT(INDEX(Table_Inflation[lines], MATCH($CY$2, Table_Inflation[year], 0)):INDEX(Table_Inflation[lines], MATCH(--LEFT(INDEX(6:6, 1, COLUMN()), 4), Table_Inflation[year], 0))) 

table_inflation

正如你所看到的,我已经把你的“开始的一年”放在“Lines Detail”!CY2中。 请记住, LEFT函数返回一个看起来像一个数字的string, 2015不等于"2015"因此需要双重一元运算符将结果转换为MATCH函数在Table_Inflation [year]中可以find的真实数字。