Доброго времени суток. Начал изучать VBA и создал нужную мне функцию. При пошаговом ее выполнении (F 8) в окне VBA никаких ошибок не возникает, все выполняется как мне нужно. Но вот когда хочу использовать ее в ячейке (ввожу знак "=" и нахожу ее название), то возникает "Предупреждение о циклической ссылке". Ниже представлен код функции. В чем может быть проблема?
Проблема скорее всего в том, что вы водите функцию в те ячейки, которые обрабатывает функция, получается что ее результаты будут зависеть от ее же результатов... как-то так.
Белиберда это а не функция. Во первых функция должна возвращать значение, а Ваша не возвращает ничего. Дальше формулы листа не могут изменять других ячеек. Только ту, где находятся. Дальше ActiveCell - сменили Вы активную ячейку и что она покажет при пересчете? Стоит заменить на thiscell.
Добавьте параметр в функцию и сделайте её по правилам - функция на то и функция, чтобы возвращать значение. А у Вас она пытается в активную ячейку записать значение. Да и в таких случаях лучше файл с функцией выкладывать, а не тупо код. У Вас слишком много других ячеек используется - тестировать не на чем. Что-то вроде этого. Не пытался особо оптимизировать и вникать(тестировать все равно не на чем) - просто чуть изменил под "рабочий" вариант и убрал GoTo(они у Вас явно излишни были). Да и Вам так будет удобнее понять.
Прошу прощения, за нелепость кода. Я только начинающий пользователь VBA, поэтому так вышло) Понял все комментарии, буду анализировать. Спасибо за ответы.