将行与其他行相乘并返回总值

时间:2018-01-02 17:43:38

标签: excel vba indexing structured-references

大家好日子,新年快乐,

我正在制作加密跟踪表,我需要你的帮助。

我有一个数据表,其中的列引用来自另一个工作表的带有INDEX公式的数据表中的值。我需要实现的是,每列的行需要乘以美元价格列,然后返回每列底部的总值。

我尝试了另一个INDEX公式,但它总是给我一个错误。是因为我正在尝试索引一个包含INDEX公式的单元格吗?

这里是我的Excel工作表与公式的链接,你会在工作表的底部找到我的尝试,但它总是返回#VALUE!错误。

https://1drv.ms/x/s!AocHOUIO1meDklmoEZkC53Zg6Z3S

如果您不想点击我的OneDrive链接,这里是截图。

Excel Screenshot

非常感谢您的时间和帮助:)

亚历

1 个答案:

答案 0 :(得分:0)

您尝试使用的公式存在一些问题,最重要的是即使正常工作,它也无法为您提供所需的结果。如果您从

更改公式
=SUM([Yobit]*INDEX(CMC_Prices[Coin.price_usd],MATCH([Coin Symbol],CMC_Prices[Coin.symbol],0)))

=SUM([Yobit])*INDEX(CMC_Prices[Coin.price_usd],MATCH([Coin Symbol],CMC_Prices[Coin.symbol],0))

然后按住CTRL + SHIFT并按ENTER键,您将得到一个结果,但它并不是您正在尝试完成的正确结果,因为它将对Yobit列进行求和,并将其相乘由INDEX / MATCH返回的第一个值,仅为ABY Coin的值。

以下是我最终为获得正确结果而做的事情:

首先,您的美元价格列已经拉动了您尝试使用该公式进行INDEX / MATCH的值,因此您不需要在公式中使用它,因为它赢了实际上INDEX / MATCH你想要的每一行。

其次,它没有被格式化为数字,并且改变格式似乎没有任何帮助(要看到这一点,尝试测试公式= M2 + M3对公式= SUM(M2) :M3)看看我的意思)。您可以通过简单地将* 1添加到M列中的公式末尾,或者在单元格中键入1,并使用" Multiply"操作进入M栏。

完成后,您可以使用数组公式(这只是一个适用于范围内所有单元格的公式)来实现您想要的效果。在你的" Totals"在行中输入以下公式:

=SUM(IF(CoinsAssets[Yobit]="", 0, CoinsAssets[Yobit]*CoinsAssets[USD Price]))

然后按住CTRL + SHIFT并按ENTER。您现在应该在公式栏中看到这个:

{=SUM(IF(CoinsAssets[Yobit]="", 0, CoinsAssets[Yobit]*CoinsAssets[USD Price]))}

这将为您提供正确的计算方法。

希望这有用!