Можно ли определить, когда ячейка становится активной ячейкой?

В Calc я хотел бы инициировать событие, когда конкретная ячейка становится активной ячейкой. Я не вижу способа сделать это.

Вот ситуация:

После ввода платежа в определенную ячейку (скажем, A5) и нажатия ввода я хотел бы программно поместить текущее время в ячейку сразу под ней (A6) - новую активную ячейку. Я хотел бы обнаружить выход из этой ячейки (A6) или вход в ячейку ниже (A7) без изменения содержимого A6 или A7.

Я хочу использовать прошедшее время между нажатиями клавиш ввода, чтобы изменить реакцию листа.

$10 (ввод) (немедленный ввод) Сигнализирует о завершении транзакции.

$10 (введите) (подождите секунду) (введите) Сигнализирует о том, что транзакция не завершена.

Разница во времени между нажатиями клавиш двойного ввода определяет, что произойдет дальше.

Эта электронная таблица содержит 6600 строк кода макроса, благодаря которому она работает, и я уже сильно полагаюсь на обработку событий, но она работает только с измененной ячейкой. В этом случае я не изменяю A6 или A7, но хочу инициировать событие, которое позволит мне узнать, что они стали активными ячейками.


person Bill Gradwohl    schedule 01.12.2015    source источник
comment
Может ли ваш макрос срабатывать при модификации на А5? Это может активировать прослушиватель нажатий клавиш Enter и реагировать соответствующим образом.   -  person Lyrl    schedule 02.12.2015
comment
Долгая история, но нет. Я даже не привожу всех подробностей, так как это слишком сложно, чтобы объяснять здесь. Это для магазина сэндвичей с большим объемом продаж, и пользователь calc потенциально должен смотреть на экран после ввода 10 долларов, чтобы увидеть, сколько изменений нужно внести. Только в том случае, если оператор выполнил расчет сдачи в своей голове, быстрый ввод завершит операцию xaction. Последовательность ввода/вывода может встречаться (в этом надуманном примере) в A6/A7, но на самом деле может быть и в A7/A8 - долгая история.   -  person Bill Gradwohl    schedule 03.12.2015
comment
Возможно, это не то, что вы хотели бы сделать, поскольку вы уже приложили столько усилий для этой настройки, но... почти наверняка конечный продукт будет более оптимизированным, если вы будете использовать OpenOffice Base в качестве менеджера данных вместо Calc. Вы все еще можете сделать Calc пользовательским интерфейсом, создав отдельную форму файла Calc (см. forum.openoffice.org/en/forum/viewtopic.php?f=83&t=40493)   -  person Lyrl    schedule 03.12.2015
comment
Я уже давно отказался от Базы. Затем попробовал еще раз несколько месяцев назад и ничего, кроме проблем. Задокументировали их, отправили как ошибки и, как обычно, ничего не происходит, чтобы их исправить. База? Нет, спасибо!   -  person Bill Gradwohl    schedule 03.12.2015


Ответы (1)


Вот пример обработчика события изменения выбора Calc:

http://www.pitonyak.org/OOME_3_0.odt

Например, выполните поиск «Начать прослушивание событий изменения выбора».

Я ожидаю, что это сделает то, что вы хотите. Тем не менее, я считаю слушателей хрупкими.

person Andrew    schedule 13.09.2016