【问题标题】:Multiply cell with several other cells based on a criteria根据条件将单元格与其他几个单元格相乘
【发布时间】:2022-08-07 15:41:33
【问题描述】:

我需要将一系列单元格与用户在表格中输入的值相乘。

因此,如果他们在单元格中输入年份“2017”,那么他们从该年份输入的值需要乘以 2017、2018 和 2019 的另一个数字。
他们输入的年份不同,但所有数字都需要一直乘到 2019 年。

这就是 Excel 工作表的样子。

这个想法是,当右侧的另一个表格添加到其他表格下方时,“2019 年价格”将自动计算。为了清楚起见,计算包含在屏幕截图的顶部。

我尝试创建一个 VBA 代码,但它只是将初始值与每个值单独相乘,而不是创建一个总数。

Sub calculate ()
ActiveCell.Offset(0,1).Select
Dim Cell As Range

For Each Cell In Range(\"F5:F24\")
    If Cell.Value < Range(\"B7\").Value Then
    
    ElseIf Cell.Value >= Range(\"B7\") Then
        Cell.Offset(0,4).Value = Range(\"B8\") * Cell.Offset(0,1).Value
        
    End If
Next Cell

End Sub
  • 在我看来,你应该注意用户界面的设计。

标签: excel vba


【解决方案1】:

您无需编程即可使用公式:

=B8 * Product(Filter($G$5:$G$24, $F$5:$F$24>=B7, 0))

这里:

  • B7 是起始年份
  • B8是起价
  • F5:F24 是一个年柱子
  • G5:G24 是一个价格柱子

公式是为D7制作的,所以把它放在那里,然后将D7复制到D12到 更新起始年份和价格地址。

【讨论】:

  • 非常好,使用 Excel 公式,!
猜你喜欢
  • 1970-01-01
  • 2018-02-10
  • 1970-01-01
  • 1970-01-01
  • 2014-12-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多