[Excel] проверка, что в клетке формула

igorek1

Черт, думал, что могу в Excel'е почти всё. Но нашелся-таки затык.
Хочу поставить проверку на клетку, что в нее ввдена формула (а не значение).
В защите листа не смог найти, как запретить ввод формул. Пробовал найти функцию, которая возвращает текст формулы, введенный в клетку. Не смог, может, из-за русификации Excel'я (ненавижу русский Excel).
Цель - чтобы юзвери не могли в качестве входного параметра скопировать формулу, а потом удивляться, что же это там другое число появилось.
Макросы и ручные проверки (поиск знака "=", например, через CTRL+F) не предлагать. Это я и сам могу.

Trofimovyoa

Пробовал найти функцию
напиши эту функцию (но не макрос) из одной строчки сам (:

igorek1

напиши эту функцию (но не макрос) из одной строчки сам (:
Сам не делал такого, но видел.
Это ж предполагает некоторую процедуру "добавления" функции.
Т.е. если юзер просто скопирует файл себе, откроет его на своем компе и не сделает этой процедуры, то этой функции у него не будет. Верно ж?

reallyjust

чисто визуально не подходит?
Ctrl+` отображает формулы вместо значений.

igorek1

Нет
Все-таки твой пример работает только если не отключать макросы. Я думал, ты другое имеешь ввиду. (Можно добавлять функции в список функций, выпадающих по кнопке f строке формул).

igorek1

чисто визуально не подходит?
Ctrl+` отображает формулы вместо значений.
В дурацкой русификации это не по Ctrl +, но да. Я хотел найти более гибкое решение. Это распространяется на весь лист...

Trofimovyoa

Можно добавлять функции в список функций, выпадающих по кнопке f строке формул)

igorek1

А, версии MS Office разные. У меня 2003 SP3.
Возможно, это и дает разницу функционала.
Надо будет поботать.

saveliev_a

В OpenOffice решал подобную проблему с помощью условного форматирования: если в ячейке формула, а не число, фон ячейки становился красным. Ввод самой формулы не запрещал.

vladan67

ага )
еще и проверку данных можно сделать)

igorek1

И условное форматирование, и проверка данных в Excel'е (той версии, что у меня стоит) работает только со значениями. Там нельзя проверить, это значение стало результатом вычисления по формуле или просто вбито руками в клетку. Первым делом сам об этом подумал.

saveliev_a

Попробую чуть позже посмотреть и проверить.

saveliev_a

Посмотрел. К сожаление, и в 2007 екселе нет функции ISFORMULA, которой я пользовался в OpenOffice. Так что остается только с помощью макроса.
Оставить комментарий
Имя или ник:
Комментарий: