excel - 如何从 Excel 表格动态计算值

标签 excel excel-formula excel-2007

我在 Excel 中遇到编程问题,但不知道如何解决。我想在 Excel 上创建一个自动交付成本程序,这将帮助我更轻松地计算成本。 输入变量是:

  • 数量(1、2-9、10-49、50+ 及更多的值)
  • 运送方式

根据数量值(value)和运输方式,Excel 应查找表格并根据下表返回总运输成本:

------------------------------------------
 Delivery |        Per shipment fee         
------------------------------------------
          |    1     2-9   10-49     50+
------------------------------------------             
Standard  |  2,99   1,89     1,5    1,1
Expedited |  5,99      2    1,75    1,25
Priority  | 10,99   3,39    2,25    1,35
------------------------------------------

让我用一些例子向您展示我想要得到什么:

1-示例: - 数量:15 - 交货:加急 - 总成本 = 15 * 1,75 = 26,25$

1,75$ 是使用变量数量和运输方式查看表格后的返回值。

我已经测试过 =IF 语句,但确信有一种更简单的方法可以做到这一点。 我不太擅长 Excel 编程,因此我们将不胜感激

致以最诚挚的问候,祝你有美好的一天!

最佳答案

假设您的表格第 4 行到第 6 行的 A 列中包含交货类型,并且第 3 行中的数量(B 列到 E)以下公式应该可以为您完成:

=INDEX(B4:E6,MATCH(B9,A4:A6,0),MATCH(C9,B3:E3,1)) * Quantity

请注意,第 3 行中的数量必须是数字。因此,数字应该是 1、2、10 和 50,而不是 1、2-9、10-59、50+。有两种可能性可以实现这一目标:

  1. 创建一个辅助行并将其隐藏(同时仅显示具有您希望的“名称”的行。
  2. 更改这些单元格上的数字格式:对于包含 2 的列,数字格式应为 "2-9"(自定义数字格式)。对于数字 10,数字格式为 "10-49",最后一列的数字格式为 "50+"。像这样,您可以看到您想要看到的内容,而单元格仍然只包含数字(为了使上面的公式正常工作)。

enter image description here

关于excel - 如何从 Excel 表格动态计算值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38102978/

相关文章:

excel - 具有指定行和列值的计数

excel - 如果范围中的单元格包含特定文本/字符,如何连接列标题

vba - 如何使用宏 vba 从特定列中删除重复行

excel - 如何创建日期和时间的自定义格式并将其分配给 Excel 工作表中的整列

vb.net - Excel.Application.get_Item 不工作

arrays - Excel:动态数组公式

excel - 为什么这个简单的 VBA 代码在 Excel 中不起作用?

vba - 如何对带有数字的excel值进行排序

Excel:基于细胞计数的条件

excel - 删除 Excel 中的增量行