VBA COUNTA | Как использовать функцию рабочего листа COUNTA в Excel VBA?

Функция рабочего листа COUNTA в Excel VBA

В нашей предыдущей статье «Excel COUNTA» мы увидели, как использовать функцию COUNT для подсчета числовых значений из диапазона значений. Как насчет подсчета всех значений в диапазоне ячеек? Да, это тоже можно считать. Чтобы подсчитать все значения ячеек в диапазоне ячеек, нам нужно использовать формулу «COUNTA» в excel VBA. В этой статье мы покажем вам, как использовать функцию COUNTA в VBA для подсчета всех значений ячеек в указанном диапазоне.

Примеры функции COUNTA в VBA

Одна из истин - функция «COUNTA» не является функцией VBA. Я знаю, что ваш вопрос: если это не функция VBA, то как мы ее используем? Ничего страшного, даже если это не функция VBA, мы можем использовать ее в классе функций рабочего листа в кодировке VBA.

Вы можете скачать этот шаблон VBA COUNTA Excel здесь - Шаблон VBA COUNTA Excel

Хорошо, давайте напишем код для применения Excel VBA COUNTA.

Шаг 1: Создайте имя подпроцедуры.

Шаг 2. Теперь сначала решите, где мы будем хранить результат функции VBA COUNTA. В этом примере я хочу сохранить результат в ячейке C2. Итак, мой код будет Range («C2»). Value.

Код:

 Sub Counta_Example1 () Диапазон ("C2"). Значение = End Sub 

Шаг 3: В ячейке C2 нам нужно значение функции VBA COUNTA. Итак, чтобы применить функцию Excel VBA COUNTA, сначала нужно применить класс функции рабочего листа.

Код:

 Sub Counta_Example1 () Диапазон ("C2"). Значение = Work End Sub 

Шаг 4: После применения класса функции рабочего листа выберите формулу СЧЁТ, поставив точку.

Код:

 Sub Counta_Example1 () Диапазон ("C2"). Value = WorksheetFunction.Count End Sub 

Шаг 5: Теперь нам нужно указать диапазон ячеек для подсчета. В этом примере нам нужно подсчитать диапазон ячеек от A1 до A11. Поэтому предоставьте ячейки с помощью объекта VBA RANGE.

Код:

 Sub Counta_Example1 () Range ("C2"). Value = WorksheetFunction.CountA (Range ("A1: A11")) End Sub 

Хорошо, давайте запустим код, чтобы получить результат в ячейке C2.

Таким образом, тот же результат возвращается и VBA COUNTA.

Таким образом, мы можем использовать COUNTA для подсчета непустых или непустых ячеек из предоставленного диапазона.

Кодирование с переменными

Переменные VBA - ключ к созданию проекта. Теперь для тех же данных мы можем объявить переменные VBA и прийти к результату.

Для примера посмотрите приведенный ниже код.

Код:

 Sub Counta_Example2 () Dim CountaRange As Range Dim CountaResultCell As Range Set CountaRange = Range ("A1: A11") Set CountaResultCell = Range ("C2") CountaResultCell = WorksheetFunction.CountA (CountaRange) End Sub 

Теперь объясним приведенный выше код.

Сначала я объявил переменную CountaRange как диапазон для ссылки на диапазон значений.

 Dim CountaRange As Range

Затем я установил ссылку как диапазон от A1 до A11.

 Установить CountaRange = Range ("A1: A11")

Вторая переменная предназначена для ссылки на ячейку результата COUNTA.

 Dim CountaResultCell As Range

Для этой переменной я установил ячейку как C2.

 Установить CountaResultCell = Range ("C2")

Теперь, как обычно, я применил функцию COUNTA, используя переменные вместо жестко заданных диапазонов. Теперь посмотрите на старый код и этот код VBA.

Код 1:

Код 2:

In code 1 we have Range C2, in Code 2 we have the variable name “CountaResultCell”. Here the variable “CountaResultCell” set reference as C2 cell. So this variable is C2 cell now.

In code 1 COUNTA function range is A1 to A11, in code 2 it is variable called “CountaRange”. This variable holds a reference to the range A1 to A11.

This is what is the difference between old code and code with variables.

So, the COUNTA function helps us to count all the non-empty cells from the supplied range irrespective of the data it has.