Как получить значение ячейки, которое введено, но не сохранено?

Автор eeigor, 25 декабря 2020, 08:45

0 Пользователи и 1 гость просматривают эту тему.

eeigor

Как получить новое значение активной ячейки, если значение еще не было сохранено?
Пользователь ввел значение в режиме редактирования, но не вышел из ячейки.

Если я не ошибаюсь, в Excel это свойство ячейки называется "Text" (ActiveCell.Text). А как в LO Calc?
Ubuntu 18.04 LTS • LibreOffice 7.5.1.2 Community

economist

Валидация не (до конца) введенных значений является ошибкой. Делайте это после Enter. Используйте Данные - проверка или макрос события изменения листа.
Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...

eeigor

economist, тут другое.
Надо распространить введённое значение – формулу – на другие ячейки. Использовать для этого InputBox() можно, но не удобно: формулу можно вводить в строке формул и пользоваться мышью для выделения.

Знатоки, предлагайте решения или подтвердите, что аналога Excel ActiveCell.Text в LO Calc нет. Причём меня интересует не ActiveCell (эту проблему я поборол), а именно свойство Text.

Вопрос решаем совместно с нашими коллегами отсюда...

UPD:
И тогда ещё вопрос:
Где в Calc элемент управления типа <ссылки> для выбора диапазона (для размещения в окне диалога)?
Ubuntu 18.04 LTS • LibreOffice 7.5.1.2 Community

sokol92

Добрый день! Вопрос нуждается в уточнении.

Что касается Excel, то при редактировании пользователем ячейки Excel переключается в режим "Ввод" ("Enter"). Макросы в этом режиме не работают и получить какую-либо информацию о введенных символах до окончания ввода невозможно. По завершению ввода возникает событие листа "Change", которое можно обработать. Свойство "Text" - это отображаемое значение ячейки, значение этого свойства изменяется после окончания редактирования одновременно со значениями других свойств ячейки. Насколько я могу судить, аналога свойства Text ячейки в Calc нет.

В Calc  после завершения ввода ячейки можно, например, обработать событие листа "Содержимое изменено" ("Content changed").
Владимир.

eeigor

Да, всё верно, и я ошибался.
А как насчёт элемента управления типа <ссылка>?
Ubuntu 18.04 LTS • LibreOffice 7.5.1.2 Community

economist

Цитата: sokol92 от 25 декабря 2020, 13:52Где в Calc элемент управления типа <ссылки> для выбора диапазона
- скорее всего тоже в Calc нет. Но расстраиваться не стоит: в MS Excel это крайне глючный инструмент. Уж лучше опираться на другой контекст:
- выделение
- активную строку/столбец
- список имен диапазонов итд    
Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...

sokol92

Цитата: economist от 25 декабря 2020, 14:58в MS Excel это крайне глючный инструмент.

Соглашусь с коллегой. В последних версиях Excel этот элемент управления убрали из меню Разработчик / Вставить.
Владимир.