Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Подсчет числа клеток Excel закрашенных или с цветным шрифтом

6.9K
18 мая 2004 года
treiber
7 / / 18.05.2004
Как подсчитать в таблице Excel, сколько клеток в строке или столбце закрашено или имеют цветной шрифт (красный, желтый, зеленый, ...)
459
18 мая 2004 года
gacol
273 / / 12.02.2003
Цитата:
Originally posted by treiber
Как подсчитать в таблице Excel, сколько клеток в строке или столбце закрашено или имеют цветной шрифт (красный, желтый, зеленый, ...)



можно так (для столбца A)
n = 0
For Each c In Range("a:a")
If c.Font.Color <> 0 Or c.Interior.ColorIndex <> -4142 Then n = n + 1
Next c

6.9K
19 мая 2004 года
treiber
7 / / 18.05.2004
Цитата:
Originally posted by gacol


можно так (для столбца A)
n = 0
For Each c In Range("a:a")
If c.Font.Color <> 0 Or c.Interior.ColorIndex <> -4142 Then n = n + 1
Next c



Как будет выглядеть функция для подсчета не по столбцу, а напрмер по строке 3?

Какому цвету соответствует константа –4142. Где можно найти соответствие констант, как минимум тому набору цветов, которые можно выбрать из палитры в меню?

Как инициировать подпрограмму (для подсчета цветных клеток по столбцу или строке), например в той клетке, где хотелось бы иметь результат подсчета.
Через макрос записал рекомендуемый код, однако никак не могу присвоить этот Макрос – ячейке.
Где и как надо выбирать написанный программный код/процедуру для записи в клетку?

459
19 мая 2004 года
gacol
273 / / 12.02.2003
Цитата:
Originally posted by treiber


Как будет выглядеть функция для подсчета не по столбцу, а напрмер по строке 3?

Какому цвету соответствует константа –4142. Где можно найти соответствие констант, как минимум тому набору цветов, которые можно выбрать из палитры в меню?

Как инициировать подпрограмму (для подсчета цветных клеток по столбцу или строке), например в той клетке, где хотелось бы иметь результат подсчета.
Через макрос записал рекомендуемый код, однако никак не могу присвоить этот Макрос – ячейке.
Где и как надо выбирать написанный программный код/процедуру для записи в клетку?



Посылаю пример.
Функция пишется в модуль и вызывается как обычно, только из опреденные пользователем. Аргумент у нее типа Range и может быть строкой тоже.
Насчет цветов - я просто их менял в режиме записи макроса, а потом смотрел номера, соотв. цветам по умолчанию.

6.9K
19 мая 2004 года
treiber
7 / / 18.05.2004
Цитата:
Originally posted by gacol


Посылаю пример.
Функция пишется в модуль и вызывается как обычно, только из опреденные пользователем. Аргумент у нее типа Range и может быть строкой тоже.
Насчет цветов - я просто их менял в режиме записи макроса, а потом смотрел номера, соотв. цветам по умолчанию.



У меня стоит немецкая Windows и соответственно Excel.
Все таки, можно описать (по-русски), как подключается функция определенная пользователем?

6.9K
19 мая 2004 года
treiber
7 / / 18.05.2004
Цитата:
Originally posted by treiber


У меня стоит немецкая Windows и соответственно Excel.
Все таки, можно описать (по-русски), как подключается функция определенная пользователем?


У меня стоит немецкая Windows и соответственно Excel.
Все таки, можно описать (по-русски), как подключается функция определенная пользователем?

459
19 мая 2004 года
gacol
273 / / 12.02.2003
Цитата:
Originally posted by treiber


У меня стоит немецкая Windows и соответственно Excel.
Все таки, можно описать (по-русски), как подключается функция определенная пользователем?



функция определенная пользователем вставляется в модуль сл.образом (пардон, если слишком подробно).
1- выходим в VBA (Alt-F11)
2- в окне проектов правым кликом выбираем Insert-Module
3- в появившемся окне модуля набираем нашу ф-цию (в примере она там и стоит)
4- в электронной таблице в нужной ячейке вставляем =, в списке функций выбираем "Другие функции" - в них "Определенные пользователем" и там уже нашу
5- в качетве аргумента выбираешь нужный Range (строку, столбец, блок ...)

Вроде бы все.

PS. Если система на немецком и ты его не учил, то сочуствую!
Попробуй найти по переводу
другие - ander
определенная - bestimmt
пользователь - Benutzer

6.9K
19 мая 2004 года
treiber
7 / / 18.05.2004
Спасибо, все получилось.
Только одна проблема, если я цвет фона в клетке меняю, например,на белый – счетчик числа закрашенных клеток не изменяется.

А как делается следующее: без вставки функции в конкретную клетку, а только программный просмотр указанной области и вставка в колонке или в строке результата подсчета числа закрашенных клеток, в те клетки в столбце или в строках, которые указаны, например первые свободные: внизу - для столбцов или справа – для строк?
6.9K
24 мая 2004 года
treiber
7 / / 18.05.2004
Цитата:
Originally posted by treiber
Спасибо, все получилось.
Только одна проблема, если я цвет фона в клетке меняю, например,на белый – счетчик числа закрашенных клеток не изменяется.

А как делается следующее: без вставки функции в конкретную клетку, а только программный просмотр указанной области и вставка в колонке или в строке результата подсчета числа закрашенных клеток, в те клетки в столбце или в строках, которые указаны, например первые свободные: внизу - для столбцов или справа – для строк?


Странно, почему так получается?
Клетка закрашена наример желтым цветом. Выделяю клетку, через меню меню цвет фона/клетки с желтого на белый – функция «не видит» белый цвет, и считает, что цвет не изменился.
Но стоит выделить какую-либо клетку с цветом фона –белый, нажать на кнопку в меню «Формат по образцу . Кисть» и навести на клетку с желтым цветом, то цвет как и следовало ожидать меняется с желтого на белый, НО при этом и функция также срабатывает и дает число закрашеных клеток на единицу меньше.
Т.е. именно только в случае примениея «Формат по образцу – Кисть» фактически полностью меняется цвет клетки (как при визуальном ее отображении, так и в каких-то внутренних, не видимых на глаз, свойствах клетки)

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог