@zkrvndm
Софт для автоматизации

Как создать макрос, который будет работать в большинстве офисных пакетов?

В последние годы растет зоопарк офисных пакетов. Все чаще заказчики открывают наши документы не в Microsoft Office, а в левых офисных пакетах. Как результат, макросы, что идут вместе с нашими документами либо не работают, либо работают некорректно.

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

Пока присматриваемся к .odt, но вдруг есть варианты получше? Помогите советом, пожалуйста.
  • Вопрос задан
  • 193 просмотра
Пригласить эксперта
Ответы на вопрос 3
@LuchS-lynx
инженер-ПТО
Надим Закиров,
Я пришел к тому, что нужно выносить скрипты из таблиц, на текущий момент я все еще в стадии принятия решения, но если речь про Винду, то в принципе можно остаться на добром старом VBA и не городить огород, но можно и в C# и в python. Под Линукс с формошлепством немного уныло, на мой взгляд интересен python + QT, присматриваюсь еще к клону Delphi Lazarus, но это опять же не панацея.
LibreOffice имеет совместимый с VBA StarBasic, который во многом схож, но работает местами медленнее VBA. Всякие Lua и JS не будем показывать каких офисных пакетов не работают с жестким диском, т.е. открыть файл/сохранить файл не выйдет. Так что только внешний макрос.

Моя статья о сравнении офисов
https://habr.com/ru/post/674580/
Ответ написан
vabka
@vabka
Токсичный шарпист
Варианты:
1. Заявлять, что макросы работают только в определённом офисном пакете, и что на других работа не гарантируется
2. Не использовать макросы. В рамках того же excel очень многое может делаться чисто силами формул.
3. Делать скрипты отдельно от документа либо писать в принципе самостоятельно работающий софт.
Ответ написан
saboteur_kiev
@saboteur_kiev
software engineer
Отказаться от макросов.

Макросы можно использовать только внутри конкретной организации.
Пересылать документы с макросами партнерам/клиентам - ужасное решение. Для начала, я бы запретил в своей организации открывать документы с макросами, которые написал кто-то - это банально брешь в защите.

Навязывать всем клиентам или партнерам какой-то единый офис не выйдет.
Навязать всем производителям офисных решений единый формат не выйдет.

Искать кардинально другие решения.
Для начала попробовать перейти исключительно на формулы
Потом задуматься о глобальном решении. Может веб-сайт на котором будете реализовывать решение.
Может экспорт ваших документов в pdf или еще что.

В общем текущий подход - кустарный, и то, что вы на него подсели, не делает его правильным.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы