Страницы: 1
RSS
В зависимости от даты начала и окончания ставится цифра
 
Приветствую всех! Подскажите макрос который бы смотрел на статус_Начала (столбец B)  если "+" то смотрим на дату начала проставляем числовое значение (цифру 1) в эту даты например дата начала 05.01.24 то в эту дату ставим цифру 1  если в Статус_Окончание (Столбец D)  смотрим на дату окончания 07.01.24 тоже ставим цифру 1 (только на начало и окончание, без промежуточных значений) а если "-" или пусто то пропускаем
Изменено: Сергей Шистеров - 09.10.2024 07:33:44
 
Это именно макросом хотите получить?  Почему не формулой
По вопросам из тем форума, личку не читаю.
 
формула уже есть, там получается слишком много столбцов дат это 2000 значений и строк 20000, медленно...

Вот на формулах
Изменено: Сергей Шистеров - 09.10.2024 08:51:51
 
 написал макрос....
 
Цитата
написал:
написал макрос....

Прикрепленные файлы
Лист Microsoft Excel.xlsm  (19.63 КБ)
Спасибо, попробую адаптировать
 
адаптировал файл...пробуй...Угадал?
Изменено: Vanin00 - 09.10.2024 10:25:17
 
отлично, спасибо)
 
=IF(OR(AND(F$7=$C8;$B8="+");AND($E8=F$7;$D8="+"));1;"")
По вопросам из тем форума, личку не читаю.
 
Ваша формула гооораздо короче моей, спасибо
 
Сергей Шистеров, не всегда то что длинно медленно и наоборот. Вопрос в количестве и тяжеловестности операций.В данном случае я свел всего к четырем  восьми сравнениям , если учитывать все операции логические.
в общей массе такое возможно будет быстрее за счет  минимума сравнений на ячейках которые точно не совпадают по датам в том случае если с + больше строк (минимум 4 операции  максимум 8 )
=IF(F$7=$C8;IF($B8="+";1;IF(F$7=$E8;IF($D8="+";1;"");""));IF(F$7=$E8;IF($D8="+";1;"");""))
но надо проверять
а если больше без плюсов то отсекать сперва надо по ним.
=IF($B8="+";IF($C8=F$7;1;IF($D8="+";IF(F$7=$E8;1;"");""));IF($D8="+";IF(F$7=$E8;1;"");""))
Тем самым сокращать количество сравнений до возможно 2х.
Но выигрыш может быть не сильным если учитывать количество IF
Изменено: БМВ - 10.10.2024 07:41:32
По вопросам из тем форума, личку не читаю.
 
Есть старый добрый принцип - сортировать массивы (диапазоны), по которым производится поиск...
Владимир
 
Владимир, приветствую. сортировка и удобство ввода стоят по разные стороны ...  :D  
По вопросам из тем форума, личку не читаю.
 
БМВ Благодарю за разъяснение, и за форуму еще раз.
Страницы: 1
Наверх