Перейти к содержимому

VBA Excel. Методы CountIf и CountIfs

    Подсчет количества ячеек в диапазоне, соответствующих заданным критериям, методами CountIf и CountIfs объекта WorksheetFunction из кода VBA Excel.

    Metod WorksheetFunction.CountIf

    Определение

    Определение метода CountIf объекта WorksheetFunction в VBA Excel:

    WorksheetFunction.CountIf  — это метод, который подсчитывает в указанном диапазоне количество ячеек, соответствующих одному заданному критерию (условию), и возвращает значение типа Double.

    Синтаксис

    Синтаксис метода CountIf объекта WorksheetFunction:

    Параметры

    Параметры метода CountIf объекта WorksheetFunction:

    Параметр Описание
    Arg1 Диапазон, в котором необходимо подсчитать количество ячеек, соответствующих заданному критерию. Тип данных — Range.
    Arg2 Критерий в виде числа, текста, выражения или ссылки на ячейку, определяющий, какие ячейки будут засчитываться. Тип данных — Variant.

    Примечания

    • Метод WorksheetFunction.CountIf позволяет получить количество ячеек, соответствующих заданному критерию, в указанном диапазоне.
    • Примеры критериев (условий): 25, "25", ">50", "<50", "береза" или D5.
    • В критериях можно использовать знаки подстановки (спецсимволы): знак вопроса (?) и звездочку (*). Знак вопроса заменяет один любой символ, а звездочка соответствует любой последовательности символов. Чтобы знак вопроса (?) и звездочка (*) обозначали сами себя, перед ними указывается тильда (~).

    Metod WorksheetFunction.CountIfs

    Должен отметить, что у меня в VBA Excel 2016 метод WorksheetFunction.CountIfs не работает. При попытке применить данный метод, генерируется ошибка:

    Run-time error '1004':
    Невозможно получить свойство CountIfs класса WorksheetFunction

    Очевидно, метод WorksheetFunction.CountIfs предусмотрен для более новых версий VBA Excel. Статья на сайте разработчиков датирована 2021 годом.

    Определение

    Определение метода CountIfs объекта WorksheetFunction в VBA Excel:

    WorksheetFunction.CountIfs  — это метод, который подсчитывает в указанном диапазоне количество ячеек, соответствующих одному или нескольким заданным критериям (условиям), и возвращает значение типа Double.

    Синтаксис

    Синтаксис метода CountIfs объекта WorksheetFunction:

    Параметры

    Параметры метода CountIfs объекта WorksheetFunction:

    Параметр Описание
    Arg1 Диапазон, в котором необходимо подсчитать количество ячеек, соответствующих заданным критериям. Тип данных — Range.
    Arg2-Arg30 Один или несколько критериев в виде числа, текста, выражения или ссылки на ячейку, определяющие, какие ячейки будут засчитываться. Тип данных — Variant.

    Примечания

    • Метод WorksheetFunction.CountIfs позволяет получить количество ячеек, соответствующих одному или нескольким заданным критериям, в указанном диапазоне.
    • Значение пустой ячейки рассматривается как 0.
    • Примеры критериев (условий): 25, "25", ">50", "<50", "береза" или D5.
    • В критериях можно использовать знаки подстановки (спецсимволы): знак вопроса (?) и звездочку (*). Знак вопроса заменяет один любой символ, а звездочка соответствует любой последовательности символов. Чтобы знак вопроса (?) и звездочка (*) обозначали сами себя, перед ними указывается тильда (~).

    Примеры с WorksheetFunction.CountIf

    Таблица, на которой тестировались примеры:

    Предыдущая статья по этой теме: VBA Excel. Методы Count, CountA и CountBlank.


    Содержание рубрики VBA Excel по тематическим разделам со ссылками на все статьи.