|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
14.11.2013, 11:54 | #1 |
Пользователь
Регистрация: 12.11.2013
Сообщений: 18
|
Счётчик выполнения условия в ячейке.
Коллеги, здравствуйте. Не удаётся решить вроде бы простую задачу - считать (1, 2, 3, 4, 5...) количество выполнения условия в ячейке.
Итак, в ячейке A1 согласно заданной формуле (то есть не вводом вручную, а в фоновом режиме) появляются различные значения. Нужно, чтобы при каждом появлении в этой ячейке значения "Взлёт", значение в другой ячейке B1, начиная с 1, изменялось на один порядковый номер (то есть становилось 2, 3, 4, 5, 6 и т. д.) 1. Пытался решить задачу всевозможными перекрёстными формулами, но выдаётся ошибка о циклической ссылке. 2. Пытался решить задачу макросом (привожу ниже), но в этом случае при наступлении в ячейке А1 ожидаемого события, значение в ячейке B1 увеличивается на единицу (то есть текущее значение + 1) не один раз, а бесконечное количество... Private Sub Worksheet_Calculate() If [A1] = "Взлёт" Then Call Vzlet_counter End Sub Sub Vzlet_counter() Application.EnableEvents = False Range("B1") = Range("B1") + 1 Application.EnableEvents = True End Sub Есть ли способ решения задачи? |
14.11.2013, 12:26 | #2 | |
Старожил
Регистрация: 15.05.2008
Сообщений: 2,058
|
а если так:
Код:
Цитата:
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499 |
|
14.11.2013, 13:08 | #3 | |
Пользователь
Регистрация: 12.11.2013
Сообщений: 18
|
Цитата:
Именно поэтому предложенное Вами решение, к сожалению, не работает. Макрос с Worksheet_Change(ByVal Target As Range) актуален только лишь в том случае, если ячейка A1 изменяется вручную, а не автоматически. |
|
14.11.2013, 13:24 | #4 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
тогда разбирайте условие в формуле ЕСЛИ. Ведь что-то меняется, вот к изменению этого "чего-то" и привязывайте счётчик!
|
14.11.2013, 13:42 | #5 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Можно запоминать значение ячйки в переменную, и при срабатывании пересчёта сравнивать текущее с запомненным.
Код:
webmoney: E265281470651 Z422237915069 R418926282008
Последний раз редактировалось Hugo121; 14.11.2013 в 13:49. |
14.11.2013, 13:52 | #6 | |
Пользователь
Регистрация: 12.11.2013
Сообщений: 18
|
Цитата:
В этом случае, Worksheet_Change(ByVal Target As Range) не видит этих изменений, а используемый мною Worksheet_Calculate() их видит, но начинает увеличивать счётчик в ячейке B1 до бесконечности (к сожалению, Application.EnableEvents = False почему-то не спасает от бесконечного исполнения макроса). |
|
14.11.2013, 19:59 | #7 |
Пользователь
Регистрация: 12.11.2013
Сообщений: 18
|
Здравствуйте. Спасибо за вариант решения, но мне не удаётся его реализовать. Если возможно, прошу отправить файл с примером.
|
14.11.2013, 21:42 | #8 | |
Старожил
Регистрация: 15.05.2008
Сообщений: 2,058
|
Цитата:
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499 |
|
14.11.2013, 22:21 | #9 |
Участник клуба
Регистрация: 02.05.2010
Сообщений: 1,390
|
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728 |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Примечание в ячейке при изменении значения в ячейке другого листа | FoxRiver | Microsoft Office Excel | 4 | 12.07.2013 08:46 |
По выделенной ячейке выполняется Макрос1.После выполнения макроса ячейка остаётся активной(выделенной). | vfv | Microsoft Office Excel | 4 | 06.02.2011 00:56 |
Как скрыть строку при выполнении условия в другой ячейке | Алексей777 | Microsoft Office Excel | 4 | 09.12.2010 10:06 |
Присваивание ячейке значения в зависимости от условия | DimonPS | Microsoft Office Excel | 3 | 12.11.2009 14:01 |