Как сделать макрос в openoffice

Добавил пользователь Дмитрий К.
Обновлено: 04.10.2024

Эндрю Питоньяк. "OpenOffice.org Объяснения макросов" - книга знакомит с созданием и управлением макросами в OpenOffice. Многочисленные примеры и объяснения демонстрируют надлежащие методы и обсуждают известные проблемы и решения. Обсуждена основная структура данных и вводятся методы для создания объектов OpenOffice, облегчения использование возвращаемых объектов при отсутствии достаточного количества документации.

  • После прочтения книги многие из Вас, добровольно как Эндрю Питоньяк станут участвовать в Калифорнийском обществе коренных растений, и попытаются вырастить кикаму в вечной мерзлоте, медитация, и работа над романом ну это само собой будет. :-)

Яндекс.Браузер - быстрый и простой в использовании веб-браузер с "облачными" сервисами, созданный на движке WebKit и оболочке Chromium. Особенности:• безопасность, гарантируемая проверкой ссылок с помощью Safe Browsing и скачиваемых файлов системой "Лаборатории Касперского";• современный минималистический интерфейс поможет удобно переходить по веб-сайтам и предложит нужные элементы управления именно тогда, когда они на самом деле понадобятся;•&n.

MSI Afterburner - функциональная утилита от компании MSI, которая предназначена для разгона видеокарт NVIDIA и AMD. Особенности: Создан на основе ядра RivaTuner Расширяемая пользователем архитектура Основные функции разгона и управления вентиляторами Поддержка основных функций захвата экрана Расширенное управление вентиляторами Мониторинг состояния оборудования Система автоматического управления профилями Дает больше свободы хардкорным оверклокерам. Что нового.

Mozilla Thunderbird - бесплатная программа для работы с электронной почтой от Mozilla, поддерживает протоколы SMTP, POP3, IMAP и RSS.Особенности:• имеет встроенный HTML редактор, который создает довольно компактный код;• поддерживает всевозможные кодировки, расширяется за счет дополнительных модулей и фильтрует рекламу, а также нежелательную корреспонденцию;• интерфейс программы прост и удобен в использовании, поддерживает смен.

Adobe Photoshop для Mac — самый популярный графический редактор в мире, который используется как новичками, так и профессионалами. Приложение позволяет вносить практически любые изменения в изображения, уровень которых ограничивается лишь мастерством пользователя. Особенности: огромный функционал программы; библиотека дополнительных расширений для более профессиональных возможностей; работа с несколькими изображениями одновременно; интеграция со всеми продуктами от Adobe Cor.

Microsoft Word for Mac для Mac — бесплатный офисный компонент для пользователей компьютеров на Mac OS. Сочетает в себе все необходимые функции для просмотра и редактирования текстовых документов. для удобства работы предусмотрено две среды: рабочая и записи, для исключения внесения случайных изменений в документ; поиск по документу; галерея инструментов идентичная таковой в приложении для Windows; полная совместимость со всеми форматами Microsoft Word; создание макросов для автомат.

uTorrent — версия самого популярного p2p-клиента для компьютеров с установленной Mac OS. Позволяет скачивать файлы из пиринговых сетей с максимальной скоростью благодаря многопотоковой загрузке из различных источников. Особенности: небольшой размер; интерфейс идентичный Windows—версии; работает с torrent файлами и magnet ссылками; возможность загружать несколько раздач одновременно, а также управлять скоростью и, приоритетом загрузок; работа в фоновом режиме; приложе.

ABBYY FineReader Express Edition for Mac - это простая и удобная в использовании OCR-программа, которая позволяет с высокой точностью конвертировать отсканированные документы и файлы изображений в различные электронные форматы. ABBYY FineReader Express Edition for Mac сохраняет исходное оформление документов, тем самым, уменьшая необходимость перепечатывания и хранения бумажных документов.Программа позволяет конвертировать изображения из форматов TIFF, TIF, PNG, JPG, JPEG, JP2, J2K, BMP, PCX, DC.

Wine - это не эмулятор Windows, как думают многие, а альтернативная реализация API Windows 3.x и Win32 (кстати, и расшифровывается Wine как "Wine Is Not Emulator").Wine позволяет конечному пользователю выполнять в unix-системах (и Linux) многие приложения, написанные для ОС Windows.

Fedora Workstation - надежная, удобная и мощная операционная система для ноутбука или настольного компьютера. Она поддерживает широкий спектр разработчиков, от любителей и студентов до профессионалов в корпоративных средах.

Представлен релиз 32-разрядного дистрибутива Runtu LITE 18.04, основой которого является пакетная база релиза Bionic Beaver 18.04 LTS. Сборка имеет минимальный набор пользовательского ПО с возможностью установки на жёсткий диск. В составе предустановлены программы для работы с Интернет, воспроизведение аудио- и видеоконтента, настройки рабочего окружения.

Smart Driver – удобный радар камер и ДПС, а так же видеорегистратор в одном приложении. Предупредит где камеры ГИБДД на дороге, в том числе укажет их тип:– камера только на скорость, в том числе "Стрелка"– камера на стоп–линию и проезд на красный– камера на полосу общественного транспорта и обочину– стационарный пост ДПС– парная камеры, контролирующие среднюю скорость на участке дороги ( "Автодория")– камера смотрящая "в спину"– засада ДПС ил.

это популярный браузер с возможностью сжатия трафика через собственные сервера. Возможности программы: Сжатие страницUC Browser сэкономит более 90% трафика благодаря технологии сжатия страницСтабильное соединение с ИнтернетСобственная технология Free-link обеспечивает стабильную связь с серверамиМощный поискВ браузер встроены различные популярные и мощные поисковые сервисыМногооконностьВы можете переключаться между открытыми страницами по своему желаниюНавигация по сайтамНавигация содержит в с.

TuneIn Radio для iOS - пожалуй самый мощный сервис для прослушивания онлайн радиостанций и подкастов со всего мира совершенно бесплатно. Особенности: более 100 000 уникальных радиостанций со всего света; прослушивание в режиме реального времени и отложенное воспроизведение; около 6 000 000 пользовательских подкастов; возможность работы с Apple Watch; лента событий в которой также отображается очередь воспроизведения; возможность добавления станций и подкастов в избранное; простой интуит.

Яндекс Музыка для iOS - клиент популярного музыкального сервиса для устройств Apple. С его помощью можно прослушивать онлайн музыку любимых исполнителей в высоком качестве совершенно бесплатно.Особенности: удобный поиск композиций по исполнителю, названию группы и жанру. Также учитываются предпочтения пользователя; рекомендации основанные на основе уже прослушанных и отмеченных песен; создание собственных интернет-радиостанций с возможностью поделиться ссылкой в социальных сетях и мессендже.

YouTube для iOS - популярный видеохостинг, получивший признание пользователей со всего мира. С обновленным интерфейсом, приложением стало пользовать еще удобнее, теперь можно пользоваться абсолютно всеми возможностями веб-версии сервиса на своем iPhone.Особенности: просматривайте контент других пользователей или выкладывайте свой; возможность проведения прямых трансляций; функции настройки качества воспроизводимого видео; возможность оставить комментарии к роликам, а также подписаться на п.

Согласно стандартному определению, макрос — это сохраненная последовательность команд или нажатий клавиш, предназначенная для частого использования в дальнейшем. Макросы поддерживают команды, позволяющие выполнять разного рода операции включая даже принятие решений. Вот пример использования макросов в электронных таблицах: если баланс меньше, чем ноль, можно указать отображать его красным цветом, в противном случае — черным; если баланс больше, чем ноль, можно указать вычесть из него 10. Многие используемые в OpenOffice команды позаимствованы из языка программирования BASIC. Для применения макрос обычно связывают с нажатием клавиши или значком на панели инструментов — это позволяет при необходимости быстро его выполнить. Так как в OpenOffice язык макросов основан на языке BASIC, он очень гибок и позволяет автоматизировать как простые, так и достаточно сложные задачи. Макросы наиболее полезны, когда пользователю необходимо выполнять определенную задачу одним и тем же путем множество раз или когда требуется нажатием одной кнопки выполнять что-то, что обычно выполняется за несколько шагов. В OpenOffice программы, которые логически связаны, сохраняются в модуле. Например, модуль может содержать программы для нахождения общих ошибок, требующих редактирования. Логически связанные модули сохраняются в библиотеках, а библиотеки — в контейнерах библиотек. Нужно помнить, что всякое приложение OpenOffice и любой его документ может содержать библиотеки, модули и макросы.

Храним макросы в библиотеке документов

Шаг 1. Создаем библиотеку

— кнопка Новый модуль создает новый модуль в выбранной библиотеке;
— кнопка Редактировать открывает выбранный в данный момент модуль для редактирования в IDE (Integrated Development Environment); она недоступна, если модуль не выбран;
— кнопка Удалить удаляет выбранный в данный момент модуль; она недоступна, если модуль не выбран;
— кнопка Закрыть закрывает диалог Управление макросами.

Наша цель — создать библиотеку, которая содержится в документе Безымянный1. Для этого вначале мы переходим на вкладку Библиотеки. Когда эта часть диалога отображается, в списке Приложение/Документ автоматически выбран контейнер Мои макросы и диалоги. Выбираем документ Безымянный1. Далее нажимаем кнопку Новая библиотека. Название новой библиотеки по умолчанию Library1, но лучше выбрать название со смыслом вроде TestLibrary. Для создания библиотеки жмем OK. Вновь созданная библиотека отображается в диалоговом окне Управление макросами в общем списке библиотек.

Шаг 2. Создаем модуль

Макросы сохраняются в модуле, соответственно, на следующем этапе в только что созданной библиотеке следует создать модуль. В диалоге Управление макросами выбираем вкладку Модули.

Созданная нами недавно библиотека TestLibrary теперь отображается в диалоге Управление макросами. Выбираем TestLibrary и нажимаем кнопку Новый модуль. У нового модуля имя по умолчанию Module1, но стоит выбрать более описательное название — мы выбираем MyFirstModule. Для создания модуля жмем OK.

Шаг 3. Создаем свой первый макрос

— кнопка Выполнить выполняет выбранный макрос. Макрос выбран в правом списке, и его название также появляется в верхнем левом поле ввода — Название макроса;
— кнопка Редактировать открывает IDE для редактирования выбранного макроса;
— кнопка Назначить связывает макрос с определенным событием (об этом ниже);
— кнопка Закрыть закрывает диалог Макрос;
— кнопка Удалить удаляет выбранный макрос — активна только если модуль выбран. Если библиотека или документ выбраны в списке Макрос из, кнопка Удалить заменяется на Создать. Кнопка Создать создает новый макрос в выбранной библиотеке;
— кнопка Управление открывает диалог Управление макросами;
— кнопка Справка запускает систему помощи.

Диалог Макрос предназначен для работы с отдельным макросом. Выбираем наш MyFirstModule и жмем кнопку Редактировать. Открывается Basic IDE. Одна пустая подпрограмма — Main — автоматически создается при создании модуля. Теперь вводим код макроса. Мы введем код программы Hello World, которую и решили использовать в качестве примера:

Sub main
HelloWorld2()
End Sub
Sub HelloWorld1
Print "Hello World One"
End Sub
Sub HelloWorld2
Print "Hello World Two"
End Sub

Храним макрос в библиотеке приложений

Если пользователь планирует устанавливать новую версию пакета OpenOffice, ему следует сделать копию всех библиотек прикладного уровня. Если OpenOffice устанавливается в то же самое место, будет перезаписан файл конфигурации, который указывает OpenOffice, в каком месте располагаются пользовательские библиотеки прикладного уровня. Как правило, библиотеки еще находятся на том же месте, но программа не знает об их существовании. Для восстановления "потерянных" библиотек независимо от того, где они расположены, используется вкладка Библиотеки диалога Управление макросами. Следует проверить, что Мои макросы выбраны в списке Приложение/Документ, и только после этого нажать кнопку Добавить. Переходим в каталог, содержащий библиотеку, которую необходимо добавить. Выбираем файл script.xlb и нажимаем Открыть. Это следует сделать для каждой библиотеки, которую требуется восстановить. Этот метод может также использоваться для добавления библиотек, сохраненных в документах. Для практики можно добавить макрос в библиотеку прикладного уровня. Открываем диалог Управление макросами, проверяем, что контейнер библиотек Мои макросы — текущий контейнер. Нажимаем кнопку Создать, чтобы добавить новый модуль в библиотеку прикладного уровня. Для добавления библиотеки следует перейти на вкладку Библиотеки. Проверяем, что Мои макросы выбраны в списке Приложение/Документ, после чего нажимаем кнопку Создать. Библиотеки, сохраненные в документах, могут быть добавлены в контейнер библиотеки приложения. Когда библиотека добавляется, она перезаписывает существующую библиотеку с тем же самым названием. Именно по этой причине имеет смысл создать осмысленное и уникальное имя для библиотеки, содержащей макросы. Это позволит избавиться от многих проблем, возникающих при перемещении макросов между контейнерами библиотеки.

Денис Лавникевич

Компьютерная газета. Статья была опубликована в номере 11 за 2008 год в рубрике soft

Давайте рассмотрим способы написания и применения макросов на примере создания сложной формы "Продажи" disposal. Сначала разместим в форме все необходимые нам элементы управления.


Чтобы назначить некий макрос для обработки некого события, его необходимо сначала написать. Чтобы написать макрос нам необходимо зайти в менеджер макросов

и перейти в режим редактирования.



Напишем простенький код, чтобы мы просто могли понять, что он работает, например:

Пока этого достаточно, сохраняем нашу заготовку макроса.



Теперь необходимо переписать наш макрос так, чтобы он выполнял запрос к базе данных, брал информацию о типах салонов и показывал тип салона для выбранного самолета в текстовом поле. Код макроса будет выглядеть примерно так:

По работе мне необходимо было разработать механизм загрузки и выгрузки данных из Excel используя свободные механизмы работающие под разными ОС.
Т.к. необходимо было, чтобы сервис работал под Linux, то механизм взаимодействия через OLE не подходил.
Для реализации был выбран OpenOffice с прямым доступом к API через C++.

Open Office api на Linux

Документация оказалась весьма скудная, а примеров работы не через OLE почти не было. Так что я решил объединить все мои исследования в одной статье на хабре.

Примерный план статьи:
1. Начало работы с API OpenOffice через C++
1.1. Генерация заголовочных файлов
1.2. Генерация файла типов RDB
1.3. Настройка Visual Studiо 2008
1.4. Собираем динамическую DLL
2. Повторное использование DLL в своей программе
2.1. Пример небольшой программы по выгрузке данных

В принципе, если возможностей DLL достаточно, то повторять действия п. 1 не обязательно.

1. Начало работы с API OpenOffice через C++

1.1. Генерация заголовочных файлов

Внутри директории с SDK должен быть батник setsdkenv_windows.bat, генерирующий другой батник.
Выполняем его, отвечая на вопросы.
Будет сгенерирован батник с установками переменных окружения.
Открываем консоль, выполняем сгенерированный батник, и в этойже подготовленной консоли генерируем заголовочные файлы для конкретной версии офиса.

1.2. Генерация RDB файла типов.

Также для начала работы нужно сгенерировать RDB файл конкретно для вашей версии офиса.
RDB файл — это что-то типа файла с описаниями типов и интерфейсов конкретной версии OpenOffice.

После этого регистрируем ее командами:
"C:\Program Files\OpenOffice.org 3\URE\bin\regcomp" -register -r "d:\oo\OOAPI\Debug\OOAPI.rdb" -c connector.uno.dll
"C:\Program Files\OpenOffice.org 3\URE\bin\regcomp" -register -r "d:\oo\OOAPI\Debug\OOAPI.rdb" -c remotebridge.uno.dll
"C:\Program Files\OpenOffice.org 3\URE\bin\regcomp" -register -r "d:\oo\OOAPI\Debug\OOAPI.rdb" -c bridgefac.uno.dll
"C:\Program Files\OpenOffice.org 3\URE\bin\regcomp" -register -r "d:\oo\OOAPI\Debug\OOAPI.rdb" -c uuresolver.uno.dll

1.3. Настройка Visual Studiо 2008

Подключаем заголовочные файлы и либы:

Tools ->Options->Projects->VC++ Directories -> Include Files
Добавляем папку со сгенерированными заголовочными файлами: \ inludecpp
Tools ->Options->Projects->VC++ Directories -> Library files
добавляем \lib directory

Tools ->Options->Projects->VC++ Directories -> Executable files
добавляем \program дирректория

Всё готово для создания консольных программ по работе с офисом.

1.4. Собираем динамическую DLL

План работы DLL примерно такой:
— При старте программы проверяем наличие RDB файла, если его нет, то происходит генерация.
Функции connect, genRdb
Если нет прав администратора на компьютере, то RDB лучше сгенерировать взаранее для типовой версии офиса.
— Стартуем сервер OpenOffice, устанавливаем ему порт для прослушки
startServer, адрес сервера офиса узнается из рееста функцией getOOPath
— Программа подключается к серверу офиса
— создается новый фрейм офиса: новый файл или имортируется xls файл.
— После этого можно посылать команды для управления содержанием
— экспортируем xls файл на диск
функция exportToUrl
— возможен и обратный механизм: имопрт xls файл и чтение из него данных
функциями getVal, getText

Прилагаю код DLL, надеюсь комментариев будет достаточно. Полный проект можно скачать по ссылке.

Читайте также: