PDA

Просмотр полной версии : Вычисление выражения



Игорь Акопян
13.10.2004, 17:29
Есть 2 ячейки. В одной текст вида "2+3*5,5", надо в другую получить результат, причём хотелось бы без нажатия кнопок. Т. е. в одну ячейку вписывается формула, а в другой автоматом результат... Может было уже, тогда извиняюсь.

ShiZa
13.10.2004, 23:56
хм. а если в процессе образовалось 2*(3-1 и скобка еще не закрыта? что должно быть? или что-нить в этом роде.
если это Excel, то можно повесить на смену ячейки, а если не он, то где это реализовать надо? вообще такая задача решается с помощью конечного детерминированного автомата, например. могу написать подробнее, если хочется.

Naeel Maqsudov
14.10.2004, 08:44
В MSExcel уже встроен автомат, надо его использовать!
Игорь, поставьте перед выражением знак = и все будет рассчитано после нажатия Enter.

Если нужно чтобы формула оставалась видна, то на событие Change можно написать макрос, который в соседнюю ячейку вписывает то же самое, но со знаком "=" впереди.


причём хотелось бы без нажатия кнопок.

Ну уж совсем без нажатия никак не выйдет. Ячейка редактируется, и по нажатию Enter все рассчитывается. Только так.

Можно еще создать форму, которая работает как OnLine калькулятор.
Там тоже понадобится один макрос на изменение текста в текстовом поле.
Тогда действительно выражение будет вычисляться по мере его набора.

Игорь Акопян
15.10.2004, 16:32
поставьте перед выражением знак = и все будет рассчитано после нажатия Enter.

:D Не ну я ж не настолько чайник.
Суть ещё более автоматизировать юзерам работу, сейчас человек вводит в ячейку формулу, потом давит комбинацию на вызов макроса, который как раз и копирует со знаком "=" в соседнюю ячейку.
А за идею спасибо, про OnChange я недопёр...