Для чего это нужно?
Когда вы собираетесь программировать, надо четко понимать, нужно ли это. Например, если вы каждый день открываете новый файл с таблицами, перекачиваете листы из одной книги в другую и сортируете по определенным колонкам, то стоит задуматься над созданием программы. Другими словами, такая программа поможет справиться с рутиной. А если вы работаете с десятками однотипных файлов или выполняете другие повторяющиеся действия, то необходимость автоматизации становится просто очевидной.
В каких приложениях применяются встроенные системы программирования?
Они применяются во многих наиболее известных системах. Это и офисные приложения, и музыкальные редакторы, а также чертежные системы. Если появилась мысль о том, что рутины стало слишком много, стоит заглянуть в справочную систему и посмотреть, нет ли там встроенной системы программирования.
Что представляют собой эти системы?
Сегодня большинство таких систем включает в себя объекты, с которыми работает само приложение. Например, лист таблиц, или ячейка. В нотном редакторе это может быть нота или целый нотный лист. Понятно, что системы программирования приближены к логике самого приложения, с которым вы привыкли работать. Так же в системе программирования можно найти команды, управляющие процессом исполнения программы. Это, например, команды выполнения повторяющихся действий или команды проверки условий.
Как начать?
Привычные для нас офисные системы предлагают автоматический способ написания программ под названием «макрос». При выполнении действий все они автоматически записываются в текст программы в виде команд. Можно открыть макрос и посмотреть, что там получилось. Можно внести необходимые изменения, чтобы конкретные действия распространить и на общие случаи. Например, указать не конкретную колонку для сортировки, а предварительно выбирать ее в ходе выполнения программы. Для этого существуют специальные команды ввода значений.
Можно ограничиться такими макросами. Но если их не хватает, то стоит открыть помощь и почитать, что там написано. Самое первое, что надо найти — это как оформляется текст программы. Обычно это ясно из кратких примеров. Однако стоит поискать описание элемента, который может называться по-разному, например, программой, подпрограммой, функцией или процедурой. Следует почитать раздел, именуемый концепцией, частыми вопросами, основами или еще как-то обобщающе. Там должна быть информация, касающаяся правил оформления программы и применяемых объектов. Например, как отделять друг от друга команды, какие части есть в командах, как они согласуются. В современных языках правила довольно однотипны, различаются только названия объектов.
Все действия, совершаемые c объектами, обычно выполняются так называемыми методами. Объектам также присваиваются определенные свойства. Например, колонке на листе может присваиваться определенная ширина или размер шрифта. Как ни странно, но колонка может оказаться не объектом, а свойством более общего объекта «рабочий лист». Поэтому надо в справочной системе просматривать все близкие по смыслу объекты, их свойства и методы. Чаще всего действия над объектами в программе выполняются с помощью присвоения значения каким-либо переменным. Это чисто формальный подход, к которому надо привыкнуть. Такое присвоение выполняется либо специальной командой, либо через применение знака «равно».
Для начала надо брать примеры, приводимые в системе помощи и запускать их на выполнение. Перед этим, конечно, надо почитать, как выполнять любую программу. Потом можно примеры модифицировать и смотреть, что получается. Лучше запускать для проверки программу после небольших изменений, а не писать огромный текст и потом гадать, почему же он не работает.
Как получить требуемый результат?
Когда изучены технические основы, можно приступать к реализации своих задумок. Поскольку все, что вы делаете, связано с объектами прикладной системы (например, офисной), то необходимо просмотреть весь список объектов и найти те, с которыми вы собираетесь работать. Например, объект под названием «рабочий лист». После этого посмотреть, какие у этих объектов есть свойства и что с этими объектами можно делать. Например, надо добавить колонку определенной ширины. Для этого есть метод «добавление» и свойство «ширина колонки». Главное — четко понимать, что нужно сделать и с каким объектом. При поиске в справочной системе нужных объектов может понадобиться просмотреть все родственные объекты, их свойства и методы. Так как колонка в таблице может оказаться не объектом, а свойством объекта «рабочий лист».
Перед работой можно набросать текст, в котором обычным языком описаны все шаги, которые необходимо сделать. На первых порах шаги могут быть очень детальны. Но, с опытом, можно вообще отказаться от такого подхода. Профессионалами он обычно применяется при проектировании сложных систем, а не небольших прикладных программ. Но в сложных случаях его лучше сохранить.
Далее к каждому шагу надо подыскать соответствующий объект и остальные «детали». Программу желательно писать и отлаживать по шагам, а не всю сразу. Иначе можно запутаться.
Для повторяющихся действий применяют так называемые циклы. Циклы могут быть построены на счетчиках, а может быть указана проверка условия на каждом шаге повторения. Например, если вам надо скопировать листы таблиц из нескольких файлов в один, то это можно сделать в цикле. На каждом шаге будут выполняться открытие файла, выделение и копирование таблицы, размещение ее в новой книге. Все команды, управляющие поведением программы в целом, обычно описываются в одном разделе справочной системы.
Внешний вид
Для ввода переменных параметров в программу может понадобиться построитель форм. Чаще всего он встроен в системы автоматизации приложений и представляет собой рисовалку, в которой помещаются разные элементы, такие как кнопки, поля для ввода текста и проч. К таким же средствам можно отнести и рисовальщик отчетов. Отчеты позволят, не меняя формата таблиц вывести на бумагу содержимое в разных видах. При этом при формировании текста отчета могут выполняться дополнительные расчеты.
Если есть необходимость ввести в ходе выполнения программы одно-два переменных значения, например, название файла или количество листов, то проще использовать команды ввода значений, а не редактор форм. Такая команда открывает небольшое окно и туда вводится требуемое значение.
Заключение
В современных системах автоматизации прикладных программ существуют разные элементы, упрощающие рутинные операции. Надо смело читать справочные подсистемы и искать в них необходимую информацию. Можно ограничиться только отчетами для реализации вывода одних и тех же данных в различной форме. Можно написать простейшую программу из нескольких команд. А можно создать целый комплекс, облегчающий выполнение очень сложных операций.
Удачи вам в избавлении от рутины!