Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

20 Октябрь 2017, 22:37 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Доступно и просто о работе в офисных пакетах
 
   Начало   Помощь Поиск Войти Регистрация    задать вопрос  
Страниц: 1   Вниз
  Печать  
Автор Тема: Как писать макросы?  (Прочитано 245 раз)
0 Пользователей и 1 Гость смотрят эту тему.
AlexWorkStream
Новичок
*
Offline Offline

Сообщений: 28


« Стартовое сообщение: 28 Сентябрь 2017, 12:09 »

Добрый день. Появилась мысль освоить написание макросов.
Вопрос в том, стоит ли и сколько это займет времени? Если стоит, то не могли бы Вы ткнуть носом в учебники по созданию макросов для Calc с нуля.
Заранее спасибо за ответы!
Записан
JohnSUN
Капитана в тот день называли на "ты"
Гуру
*******
Offline Offline

Пол: Мужской
Расположение: Киев
Сообщений: 2 346


Помогаю людям и компьютерам понимать друг друга


WWW
« Ответ #1: 28 Сентябрь 2017, 12:44 »

Дельная мысль, однозначно стоит: медики уверяют, что у людей, которые постоянно нагружают мозг разными задачами, болезнь Альцгеймера и старческое слабоумие начинаются гораздо позже. А уж в программировании этих самых разных задач хоть пруд пруди. Так что написание макросов - путь к долголетию! Вперёд и попутного ветра!
Первые макросы займут секунд 20-30. Реально!
Для начала идёшь в Сервис - Параметры - LibreOffice - Расширенные параметры, чтобы убедиться, что на пункте "Разрешить запись макросов" стоит птичка.
Затем при какой-нибудь открытой книге Calc выбираешь из меню Сервис - Макросы - Записать макрос (появится панелька с единственной кнопкой "Завершить запись"
Щелкаешь мышкой по какой-то ячейке, пишешь "Здравствуй, мир!", жмёшь Enter и щёлкаешь по этой самой "Завершить..."
В появившемся окне сохранения в поле Имя макроса пишешь что-нибудь вроде HelloW или Macro1.
Теперь или Alt+F11 или из меню Сервис - Макросы - Управление макросами - LibreOffice Basic выбираешь этот свой макрос и нажимаешь Править. Вот они - десять строк кода твоего первого макроса.
Ставишь курсор в любую строчку и жмёшь F5 - переключаешься обратно в книгу и видишь - ВАУ! - что макрос работает, он написал "Здравствуй, мир!" в еще одну ячейку.
Жмёшь Alt+F11 и кнопку Выполнить - еще в одной ячейке появился текст.
Возвращаешься в редактор макроса и пытаешься прочитать, что там написано... Сложно, но можно... Меняешь .Value на что-то другое - выполняешь - работает.
Таким же образом записываешь какие-то другие действия (например, выделить диапазон и закрасить его каким-то цветом). Ещё что нибудь...

Ну, а потом, как тут сейчас все начнут советовать - читаешь Питоньяка, устанавливаешь MRI, пишешь более сложные программы...

И имей в виду - большая часть нужных программ уже давным давно написана, нужно только найти готовые куски кода и слепить из них свою программу.
Записан

Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне
economist
Ветеран
*****
Offline Offline

Сообщений: 715


« Ответ #2: 29 Сентябрь 2017, 00:29 »

Макросы для OpenOffice|LibreOffice Calc (язык StarBasic) могут в себе содержать и целые куски макросов для Microsoft Excel (язык VBA), по которому литературы, информации и примеров доступно в десятки раз больше (а сам VBA чуть попроще, не такой "многословный"). Эти языки имеют примерно 50% общего, а алгоритмы, принципы и приемы автоматизации - вообще совпадают 1:1, за вычетом пустяков.

Изучая макросы электронных таблиц "вообще" - есть хороший шанс вырасти как специалист и начать "стоить" не как обычный бухгалтер, экономист, 1С-ник, админ или PHP-ист (с окладом ~25-30 тыс. руб.), а как "самостоятельный лоскутный офисный автоматизатор" (с окладом ~40-65 тыс. руб.) Я не шучу, цифры из реальной жизни и не только моей. В крупном городе эти цифры можно умножить на 1,5...

Самое удивительно в макросах то, что их результат - "ближе всего" к бизнесу, его хозяевам и вашим коллегам. Нет лучшего способа показать себя, чем написать макрос, который делает работу целого дня - за один час. Или ещё реальный пример: 4 человека считали зарплату и налоги для 1000 работников за 20 дней. После написания макроса - 1 человек считает её же - за 4 дня. 80/4=20 раз (во столько снизились трудозатраты). Зарплата этого человека теперь в 4 раза больше чем у тех 4-х. Зарплатный рычаг 1:5 (на сколько выросла ЗП от суммы экономии) - за рубежом назвали бы грабежом, но в нашей действительности любой объективный рост зарплаты - достижение, так что дерзайте!

Чтобы освоить макросы до "заметного уровня" - понадобится не менее 80 часов (~2 месяца по 2 часа каждый рабочий день).
« Последнее редактирование: 29 Сентябрь 2017, 00:37 от economist » Записан

Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...
Страниц: 1   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!