SumIf на двух листах

Я пытаюсь выполнить SumIf, где данные хранятся в Sheet6 (Debt), а sumif необходимо добавить в Sheet5 (Summary - Debt> 12 месяцев).

Я уже собрал уникальные номера клиентов и вставил их в столбец B7: B ###

Номера клиентов хранятся в столбце B раздела «Долг», а столбец для суммирования - «Долг: H: H».

Для этого в строке формул я бы написал: = Sumif (Долг! B: B, B7, Долг! 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))"

person J.Zentner    schedule 17.11.2016    source источник


Ответы (2)


Попробуйте назначить свою последнюю строку строковой переменной (скажем, sTest) и использовать немедленное окно 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 & "))"
person Rdster    schedule 17.11.2016
comment
Привет, все еще не работает. Результатом будет = СУММЕСЛИ (Sheet6! B2: B8670, (B7), (Sheet6! H2: H8670)). В книге нет листа с именем Sheet6, а есть Debt ... - person J.Zentner; 17.11.2016
comment
Тогда это часть вашей проблемы ... ваш код говорит Sheet6 - person Rdster; 17.11.2016
comment
@Rdster Заказчик использует Sheet6 в качестве индекса листа внутри книги. На самом деле он имеет в виду лист с именем Debt (прочтите его сообщение еще раз). просто измените sheet на Debt в своем ответе, и он должен работать. А также с Sheet5 по Summary - Debt > 12 Months - person Shai Rado; 17.11.2016
comment
Ага, я это понимаю. Я собираюсь позволить ему получить Эврику! момент, когда он собрал это для себя. - person Rdster; 17.11.2016

Вот ответ:

    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$2:$b$" & lra & ",b7,(Debt!$h$2:$h$" & lra & "))"
person J.Zentner    schedule 17.11.2016