【问题标题】:What is the sumproduct syntax in vba?vba 中的 sumproduct 语法是什么?
【发布时间】:2021-02-14 14:31:02
【问题描述】:

sum 乘积的正确语法是什么?

这是我的代码:

mFormula = "=SUMPRODUCT(--((1.Insert_Data!F:F)=2.Counting_sheet!A8)),(--((1.Insert_Data!E:E)))"
Range("C8") = Evaluate(mFormula)

【问题讨论】:

  • 是什么让您认为这是不正确的?换句话说,当你运行它时会发生什么?
  • 你为什么不用Range("C8").Formula = "=SUMPRODUCT(--((1.Insert_Data!F:F)=2.Counting_sheet!A8)),(--((1.Insert_Data!E:E)))"?它应该工作

标签: vba vba6


【解决方案1】:

你的括号不平衡

mFormula = "=SUMPRODUCT(  --(('1.Insert_Data'!F:F)='2.Counting_Sheet'!A8), " & _
                         "--('1.Insert_Data'!E:E)  )"

Range("C8") = Evaluate(mFormula)

【讨论】:

  • 如果您在工作表单元格中使用相同的公式,它是否有效?包含这些工作表的工作簿是否处于活动状态?
  • Dim e As Integer Dim v As Integer Dim mFormula As String For e = 8 To 120 mFormula = "=SUMPRODUCT( --(('1.Insert_Data'!F:F) = '2. Counting_sheet'!A&e), " & _ "'1.Insert_Data'!E:E)" Range("C" & e) = Evaluate(mFormula) Next e 还是不行反而给了我一个名字错误
【解决方案2】:
mFormula = "=SUMPRODUCT(  --(('1.Insert_Data'!F:F) = '2.Counting_sheet'!A8), " & _
                     "'1.Insert_Data'!E:E)"

这是正确的语法

【讨论】:

    【解决方案3】:

    子项号() '

    ' Dim e As Integer 将 mFormula 调暗为字符串

    对于 e = 8 到 120

    mFormula = "=SUMPRODUCT(  --(('1.Insert_Data'!F:F) = '2.Counting_sheet'!A" & e & ")," & _
                         "'1.Insert_Data'!E:E)"
                         
                         
    Range("C" & e).Value = mFormula
    

    下一个

    结束子

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-07-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多