两张纸上的 SumIf

SumIf across two sheets

我正在尝试做一个 SumIf,其中数据保存在 Sheet6(债务)中并且需要将 sumif 添加到 Sheet5(摘要 - 债务 > 12 个月)。

我已经收集了独特的客户编号并将它们粘贴到 Col B7:B###

Customer Numbers 保存在 Debt 的 Col B 中,求和的列是 DebtH:H

要在公式栏中执行此操作,我会写:=Sumif(Debt!B:B, B7, Debt!H:H)

这是我目前的情况:

 Dim lr As Long
  Dim lra As Long
lr = Sheets("Summary - Debt > 12 Months").Cells(Rows.Count, "B").End(xlUp).Row
lra = Sheets("debt").Cells(Rows.Count, "B").End(xlUp).Row
    Sheets("Summary - Debt > 12 Months").Range("H7:h" & lr).Formula = "=SUMif(sheet6!b2:b" & lra,(sheet5!b7:b" & lr),(Sheet6!h2:h" & lra))"

尝试将最后一行分配给字符串变量(例如 sTest)并使用立即 window Ctrl + G 并键入 ?sTest

你想传递的,不一定是你想的那样。

您需要更多 & 和起始引号。

Sheets("Summary - Debt > 12 Months").Range("H7:h" & lr).Formula = "=SUMif(sheet6!b2:b" & lra & ",(sheet5!b7:b" & lr & "),(Sheet6!h2:h" & lra & "))"

答案如下:

    Dim lr As Long
      Dim lra As Long

lr = Sheets("Summary - Debt > 12 Months").Cells(Rows.Count, "B").End(xlUp).Row
    lra = Sheets("debt").Cells(Rows.Count, "B").End(xlUp).Row

Sheets("Summary - Debt > 12 Months").Range("H7:h" & lr).Formula = "=SUMif(Debt!$b:$b$" & lra & ",b7,(Debt!$h:$h$" & lra & "))"