Элементы управления в calc и excel

Автор l1, 13 мая 2024, 19:14

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

l1

Доброго времени суток!

Проблемы с отображением элементов управления (флажок, переключатель, списки, даты и т.д.) в MSO 2010-2016.
В частности:
1. Если создан и сохранен в LO тип ods: открываем в MSO - не отображаются все элементы. Открываем  LO - отображаются все элементы
2. Если создан и сохранен в LO тип xlsx: открываем в MSO - не отображаются все элементы, кроме флажка (чекбокс), при этом открытие с ошибкой "...в части содержимого...восстановить..." . Открываем  LO - не отображаются все элементы, кроме флажка (чекбокс).



Тестирование на:
Сборка LO libreoffice-24.2.3.2 https://git.libreoffice.org/core/+log/433d9c2ded56988e8a90e6b2e771ee4e6a5ab2ba
первоначально была что-то из 7.5, потом обновил до 7.6.7, потом на 24.2.3.2 - на всех версиях одно и тоже.

Вопросы:
1. Есть варианты решения?
2. И по ошибке "...в части содержимого...восстановить..." - есть какой-либо перечень, чем "нельзя" пользоваться для совместимости с excel.



sokol92

Цитата: l1 от 13 мая 2024, 19:141. Если создан и сохранен в LO тип ods: открываем в MSO - не отображаются все элементы. Открываем  LO - отображаются все элементы
MS Excel плохо, на мой взгляд, поддерживает формат .ods.

Цитата: l1 от 13 мая 2024, 19:142. Если создан и сохранен в LO тип xlsx: открываем в MSO - не отображаются все элементы, кроме флажка (чекбокс), при этом открытие с ошибкой "...в части содержимого...восстановить..." . Открываем  LO - не отображаются все элементы, кроме флажка (чекбокс).

В части Text box см. баг tdf#150248.
Можно "подписаться" на этот баг (для увеличения его значимости) и создать аналогичные в части других элементов управления.

Мы практически не используем элементы управления на листах электронных таблиц (ни в Excel, ни в Calc).

Если необходимо создать шаблон документа, общий для Excel и Calc, то, по моему мнению, лучше это сделать в Excel (в "родных" форматах). Проблем при открытии книг Excel в Calc намного меньше, чем с случаях, указанных выше.
Владимир.

economist

Еще можно держать два одинаковых файла с разными макросами: *.ODS и *.XLSM и открывать соотв-но в Calc(Win+Lin) и Excel(Win).

Чтобы данные в файлах были одинаковы - сами эти файлы д.б. пустыми. То есть данные хранить надо в SQL БД (SQLite, DuckDB, MySQl, PostgreSQL), а в таблицах - просто отображать (простыми макросами или штатными механизмами типа Ctrl+Shift+F4 и msquery32.exe).

Этот подход сохраняет лучше их двух миров, навсегда решает проблемы контроля доступа, персональных b оптимальных настроек (именно они и сохраняются в ODS/XLSM), конфликта одновременных правок по LAN/WLAN/WAN и крэшей. 
Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...

l1

sokol92,economist спасибо!

sokol92
не использовать - с пользователями тяжелый случай.. особенно с ярыми противниками LO :'( , а именно они делают шаблоны.


economist
Не получится, эти шаблоны отправляются клиентам, они заполняют и возвращают. Т.е. отправлять в ods - у них проблемы, в xlsx - у нас.

sokol92

Цитата: l1 от 15 мая 2024, 19:49именно они делают шаблоны.
Цитата: l1 от 15 мая 2024, 19:49Т.е. отправлять в ods - у них проблемы, в xlsx - у нас.


Готовите шаблоны в Excel в формате xlsx (xlsm). Заполняете и возвращаете в том же формате как в Excel, так и в Calc. Проблем быть не должно (мы давно так делаем).

Разница с Вашим стартовым сообщением - элемент управления (как и весь шаблон) был создан в Excel (а не в Calc). При открытии и сохранении файла в Calc используется один и тот же формат (xlsx).
Владимир.

l1

Цитата: sokol92 от 15 мая 2024, 20:25отовите шаблоны в Excel в формате xlsx (xlsm). Заполняете и возвращаете в том же формате как в Excel, так и в Calc. Проблем быть не должно (мы давно так делаем).


Первоначально шаблоны сделаны в MSO 2007 (xlsx). Есть необходимость в редактировании нашими сотрудниками (в L0) - при открытии, чекбоксы уже смещаются (привязка к странице, а не к ячейке). Если добавить строку или просто расширить строку, то чекбоксы остаются, а текст относящийся к ним "уехал". Клиенты отредактировал и вернул - тут также есть вероятность получить смещение, а если отрыть в MSO 2007 можно получить ошибку "...в части содержимого...восстановить...".
Технически подразумевалось убрать MSO полностью... а так получается "ничего хорошего".
Или не использовать элементы управления - но это "тяжело"

sokol92

Когда готовите шаблон - тестируйте в MS Office и в LibreOffice. На компьютере разработчика шаблона (MS Windows) должен быть установлен как MS Office, так и LibreOffice.

Когда закончится "переходный период" - уберете MS Office и перейдете на форматы LO.
Владимир.

l1

Так и задумывалось, но... "переходный период" не заканчивается... ген.дир. не хочет "ругаться", поэтому ждем, когда все файлы возможно будет открывать только в LO (из-за ошибки "...в части содержимого...восстановить...")