EXCEL:比较同一列中的单元格并计算值

时间:2017-04-05 10:56:00

标签: excel excel-vba excel-formula vba

我需要根据价格最低的供应商的价格和最大价格的供应商的价格来计算利润。假设我的销售价格基于最高的供应商价格。

正如您在下表中所见,我有列

  • 产品
  • 购买(我的供应商的价格)
  • 销售额%(我将供应商价格出售的保证金)
  • 最终价格
  • 最后,我选择从哪个供应商处购买(BS)以及我用哪个价值作为销售基地(PB)。

有没有办法用PB-BS计算产品A / B / C / ...的利润?

enter image description here

3 个答案:

答案 0 :(得分:1)

最简单的方法是使用数据透视表。数据透视表将根据产品名称为您组合项目,并可显示每个名称的最大值和最小值。

这样就不需要" BS" /" PB"你有这个专栏,并且每个产品的利润都很好而且整齐!

你会这样说出来:

pivot table

要插入数据透视表,请选择您的数据,然后点击插入>数据透视表。

填充"行标签"和"价值观"部分,只需将字段(数据透视表窗口的顶部)拖动到部分中,如我的示例所示。

默认情况下,"值"物品将是一笔款项。您可以通过单击每个项目的小箭头并选择"值字段设置来更改此设置..."然后是最小或最大

然后,您可以自己添加差异(或"利润")列。

答案 1 :(得分:1)

您可以尝试这些数组公式,这需要特殊的按键 Ctrl + Shift + Enter 而不是单独输入。

在E2中(这将根据产品的可用价格返回PB或BS)

=IF(B2=MIN(IF($A$2:$A$12=A2,$B$2:$B$12)),"BS",IF(B2=MAX(IF($A$2:$A$12=A2,$B$2:$B$12)),"PB",""))

在F2中(这将根据BS和PB返回利润)

=IF(B2=MAX(IF($A$2:$A$12=A2,$B$2:$B$12)),D2-MIN(IF($A$2:$A$12=A2,$B$2:$B$12)),"")

请务必使用 Ctrl + Shift + Enter 确认上述公式。

答案 2 :(得分:0)

感谢您的帮助。 :d 我使用了IFSUM功能,它也有效。

=SUMIFS($D$2:$D$12,$A$2:$A$12,A15,$E$2:$E$12,"PB")-SUMIFS($D$2:$D$12,$A$2:$A$12,A15,$E$2:$E$12,"BS")

我会测试你的建议!

此致