Страница: 1 |
Страница: 1 |
Вопрос: Побочные эффекты функций
Добавлено: 28.10.08 13:13
Автор вопроса: Dima
Как добиться от функции побочных эффектов? В частности, меня интересует, чтобы она могла, в зависимости от условий, менять цвет определенных ячеек. То есть, что-то типа:
function a(x)
if x>0 then
Cells(1,1).Interior.ColorIndex=3
else
Cells(1,1).Interior.ColorIndex=0
end if
a=x
end function
Ответы
Всего ответов: 8
Номер ответа: 1
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #1
Добавлено: 29.10.08 03:01
Вряд ли получится.
Если нужно в зависимости от условий применять форматирование, в Excel есть для этого стандартные средства
Номер ответа: 2
Автор ответа:
Nytrogen
Вопросов: 18
Ответов: 186
Профиль | | #2
Добавлено: 29.10.08 10:17
Побочные эффекты - это баги. Если же Вы хотите написать функцию, которая помимо основной задачи выполняет некоторые другие действия, что Вам мешает написать код этих действий?
Номер ответа: 3
Автор ответа:
Dima
Вопросов: 6
Ответов: 10
Профиль | | #3
Добавлено: 29.10.08 11:37
Условное форматирование позволяет изменить формат ячейки в зависимости от ее содержимого. А мне надо менять формат в зависимости от содержимого другой (других) ячейки.
Nytrogen
А кто (что) будет запускать этот код? В том-то и дело, что его удобно запускать, если во время пересчета ячеек выполняется некое условие.
А еще, насколько я понял, из функций невозможно изменить содержимое глобальных переменных?
Номер ответа: 4
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #4
Добавлено: 29.10.08 13:27
В Excel можно менять формат ячейки, в зависимости от значений других ячеек.
Номер ответа: 5
Автор ответа:
Dima
Вопросов: 6
Ответов: 10
Профиль | | #5
Добавлено: 29.10.08 15:35
Как?
Номер ответа: 6
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #6
Добавлено: 30.10.08 00:11
http://office-2007.ru/?p=154
Номер ответа: 7
Автор ответа:
Dima
Вопросов: 6
Ответов: 10
Профиль | | #7
Добавлено: 30.10.08 11:03
Спасибо. Надеюсь, в Офисе-97 это тоже есть. Доберусь до того компьютера - проверю
Номер ответа: 8
Автор ответа:
mc-black
ICQ: 308-534-060
Вопросов: 20
Ответов: 1860
Web-сайт:
Профиль | | #8
Добавлено: 30.10.08 15:47
То, что ты пишешь, Dima, это возможно при помощи пользовательских функций. Стандатные функции - нет.