Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Найти минимальный период, для которого верно условие, VBA, пользовательская функция
 
Добрый день!

С большим уважением выражаю благодарность всему сообществу и автору сайта лично. В течение многих лет все ответы на все вопросы всегда находил здесь.
Нужна помощь в написании пользовательской функции на VBA. Обычными формулами не решить задачу эффективно, а VBA не знаю.
Суть задачи:
"Каков минимальный период T ("T(искомое)"), для которого максимумы за период T непрерывно убывают? Если нет такого Т, выдать #Н/Д"

1.Ищем T(искомое). Его и выдает функция.
2.Есть столбец с данными длиной N.
3.Для данных ищем максимумы за период T. Начинаем с T=1 (то есть при T=5 ищем по логике: если значение больше четырех (5-1) предыдущих, то оно является максимумом и записывается в массив максимумов за период 5)
4.Далее рассматриваем массив максимумов за период T.
Если каждое последующее значение ниже предыдущего, то текущее T=T(искомое).
Если неверно, то выполняем действия c пункта 3. для T=T+1
5. Так до тех пор, пока не найдется T(искомое).
6. В начале проводим проверку, есть ли вообще такое T, для которого выполнится условие.
Для этого в начале проверяем пункт 3 для T=N-1. Если для такого T гипотеза не верна, то T(искомое) должно выдать #Н/Д.
7. Выводим T(искомое).

Заранее благодарен за помощь!
Изменено: Williams - 19.05.2016 11:04:58
Страницы: 1
Наверх