Scorry_1 писал(а):Да мне менять и не нужно - хватило бы возможности изменять значение возвращаемым значением.
А что на счет второго вопроса? Если возможно выдрать область суммирования из формулы, то это тоже сильно облегчило бы жизнь.
Сейчас у меня так: в функцию передается значение ячейки с суммой области, также передается область сдвинутая от области суммирования на 1 столбец, т.о. при заполнении строки ниже суммируемых приходится дважды изменять область, первый раз изменять область суммирования, второй - область передаваемую в функцию. Хотелось бы этого как-то избежать... (надеюсь, что не слишком сумбурно написал)
Если функция не встроенная, а создана пользователем в VBA, то:
1) узнать из функции какая ячейка excel ее вызвала
Application.Caller возвратит объект Range (см. Справку)
2) в ячейке формула "=сумм(xx:yy)" как находясь в функции забрать область (xx:yy) чтобы работать с ней...
Свойство
Range("A1").Precedents возвратит объект Range состоящий из ячеек использованных в формуле заданного диапазона