Как использовать Countifs с несколькими условиями в VBA? - PullRequest
0 голосов
/ 22 января 2019

Я работаю над макросом, который подсчитывает данные с несколькими условиями из базы данных.

Существует столбец, соответствующий графику смены рабочих, а другой - производственная линия, к которой они принадлежат.

Я пытался использовать функцию Countifs

Sheet1.Cells(2, 3) = Application.CountIfs(Sheet2.Range(Cells(2, 3), _
      Cells(7, 3)), "7M08", Sheet2.Range(Cells(2, 4), Cells(7, 4)), "4")

Я пытаюсь найти рабочую смену "7M08" между строками 2 и 7 столбца 3. Также должно получиться, что искомая производственная линия между строками 2 и 7 столбца 4 равна 4.

В настоящее время в методе Range есть ошибка, но мне необходимо искать ячейки способом Cells (1,2) вместо B1.

1 Ответ

0 голосов
/ 22 января 2019

Пожалуйста, попробуйте этот код.

Dim Rng As Range

With Sheet2
    Set Rng = .Range(.Cells(2, 3), .Cells(7, 3))
End With
Sheet1.Cells(2, 2).Value = Application.CountIfs(Rng, "7M08", Rng.Offset(0, 1), "4")
...