Пакеты прикладных программ (ППП) − это специальным образом организованные программные комплексы, рассчитанные на общее применение в определенной проблемной области и дополненные соответствующей технической документацией.
В зависимости от характера решаемых задач выделяют различные виды ППП. Чтобы пользователь мог применить ППП для решения конкретной задачи, пакет должен обладать средствами настройки (иногда путём введения некоторых дополнений).
Каждый ППП обладает обычно рядом возможностей по методам обработки данных и формам их представления, полноте диагностики, что дает возможность пользователю выбрать подходящий для конкретных условий вариант.
ППП обеспечивают значительное снижение требований к уровню профессиональной подготовки пользователей в области программирования, вплоть до возможности эксплуатации пакета без программиста. Часто пакеты прикладных программ располагают базами данных для хранения данных и передачи их прикладным программам.
Как уже говорилось, самым распространенным в мире офисным пакетом является Microsoft Office. По данным International Data Corporation — одной из крупнейших компаний, работающих в области компьютерной аналитики, это приложение установлено более чем на 95% персональных компьютеров. Пакет Microsoft Office Standard Edition 2007 включает программы: Word 2007, Excel 2007, Outlook 2007, PowerPoint 2007 (возможно также включение в этот список программы Publisher). На возможностях этих программ мы кратко остановимся.
Топ языков которые нужно учить в 2022 году #программист #компьютер #код
Microsoft Word — это многофункциональная система обработки текстов, обладающая полным набором средств, необходимых для быстрого создания и эффективной обработки документов практически любой степени сложности.
Word обеспечивает редактирование текста, предоставляя пользователю разнообразные инструменты форматирования (на уровне символа, абзацев и разделов).
На уровне символа программа обеспечивает символьное форматирование (шрифт, размер шрифта, расстояние между символами, полужирный текст, курсив, подчеркивание, цвет текста и т.п.).
На уровне абзаца осуществляется форматирование абзаца (способ выравнивания, межстрочные интервалы, обрамление абзацев, заливка абзаца, создание маркированных списков и т.д.).
Программа также позволяет форматировать разделы, то есть участки документа, в пределах которых сохраняют свой формат колонки, колонтитулы, нумерация страниц, сноски, поля и некоторые другие параметры. Совокупность форматирования символов, абзацев и разделов, а также параметров страницы (размер, фон и т.п.) определяет информацию о макете документа.
Word значительно облегчает работу при форматировании документа, предоставляя возможность использовать стили.
Стиль — это именованный и сохраненный набор параметров форматирования. Стиль может определять шрифт, его размер, межстрочный интервал, способ выравнивания текста по краям и т.д. Определив стиль, можно быстро применить его к любому фрагменту текста документа. Форматировать текст с помощью стилей намного быстрее, чем изменять вручную каждый элемент форматирования.
Рейтинг языков программирования в 2023, Рекомендации по ChatGPT, Зарплаты в 🇺🇦 геймдеве
Использование стиля гарантирует единообразие внешнего вида определенных элементов документа. При внесении изменений в определение стиля весь текст документа, к которому был применен этот стиль, изменится в соответствии с новым определением стиля. В Word есть целый ряд заранее определенных стилей, а также предусмотрена возможность создавать пользовательские. Кроме того, использование стилей позволяет автоматизировать такие процедуры, как составление оглавления и указателей.
Как правило, в организациях создается множество повторяющихся (типовых) документов, подготовку которых можно ускорить, используя специальные шаблоны. Шаблон позволяет быстро изготавливать новые, аналогичные по форме документы, не тратя времени на форматирование. Шаблоны могут содержать информацию о стилях, стандартных текстах и даже панели инструментов, что позволяет унифицировать и автоматизировать процесс подготовки документов. В комплект поставки Word входят шаблоны многих стандартных документов.
Таким образом, с помощью программы Word можно быстро оформить приказ, служебную записку, подготовить научно-технический отчет, письмо или любой другой документ, содержащий стандартные элементы.
Word предлагает встроенные средства графики, позволяющие включать в текст схемы, чертежи и диаграммы.
Важной особенностью программы является возможность поиска и замены фрагментов текста, сравнения версий документов, проверки правописания.
В Word 2007 реализованы также новые возможности доступа к дополнительным ресурсам (электронным словарям, шаблонам, клипартам, учебным материалам и т.п.), которые собраны на специальном Web-узле Microsoft Office Online.
В последнее время появился ряд новых интерактивных служб на русском языке. В частности, пользователям Office 2007 доступны электронные энциклопедии и системы поиска товаров в Интернет-магазинах.
Число подобных сервисов будет постоянно расширяться, открывая пользователям MS Office доступ к новым услугам.
Поддержка в Word 2007 формата файла XML позволяет сохранять резюме, отчеты и другие документы в этом формате, не нарушая при этом форматирования Word. При сохранении документа Word в формате XML создается единственный файл, что упрощает организацию общего доступа к файлу и работу с ним по сравнению с форматом HTML, когда изображения и другие файлы хранятся отдельно.
Microsoft Outlook представляет собой мощное средство для работы с персональной информацией. Программа объединяет функции электронной почты, личного календаря, средств планирования, управления личной информацией (такой, как контакты и задания), создания специальных приложений для сотрудничества и совместного использования информации. Outlook обеспечивает ведение списка контактов, позволяющего хранить данные об адресатах, а также вести журнал, в котором можно сортировать и находить документы Microsoft Office по времени работы с ними.
Множество людей во всем мире оценили возможности Outlook для планирования своей работы и контроля выполнения дел. Весьма удобной оказалась возможность установить для каждого запланированного мероприятия напоминания за определенное время. Пользователи могут увидеть напоминания обо всех запланированных на текущий день делах или получить предупреждение о важном событии за несколько дней.
Outlook можно использовать и для планирования групповой работы. Например, при работе в корпоративной сети можно посмотреть расписание свободного времени сотрудников, которых нужно пригласить на совещание, и автоматически выбрать наиболее удобное для всех время.
В последней версии (Outlook 2007) программа существенно изменилась. Новый интерфейс обеспечивает расположение сообщений на экране в виде вертикального окна (так называемой газетной колонки).
Появились новые возможности управления письмами. Функция «интеллектуальной группировки» почты позволяет упорядочить письма по времени получения, важности, объему и т.д. В результате пользователь получает краткий список разделов: сегодня, вчера, на этой неделе, в последний месяц, за последний год. Щелкнув мышью по любому пункту, можно ознакомиться с письмами, которые соответствуют определенным критериям.
Еще одно новшество позволяет более эффективно сортировать и обрабатывать почту. Речь идет о виртуальных папках поиска, отображающих результаты определенных поисковых запросов. При этом все элементы электронной почты остаются в своих исходных папках программы Outlook. С помощью папок поиска легко группировать письма по определенным критериям.
В Outlook 2007 появился настраиваемый фильтр спама. Программа фильтрует сообщения с подозрением на спам и автоматически перемещает их в папку «Нежелательная почта» (Junk e-mail folder).
Microsoft Power Point — это популярная программа подготовки презентаций, которая широко используется бизнесменами, преподавателями, лекторами и служащими офисов. Широкое распространение этой программы изменило само представление о трудоемкости создания презентации. Всего 15 лет назад доклады и презентации сопровождались преимущественно бумажными плакатами, изготовление которых было весьма трудоемким и часто требовало услуг профессиональных чертежников. Обычно плакаты фотографировались и с них делались слайды, которые демонстрировались с помощью слайд — проекторов. Сегодня благодаря появлению программ типа Power Point оформление доклада самым качественным иллюстративным материалом занимает считанные минуты.
Power Point позволяет создавать наглядные презентации, интегрируя текст, графику, видео и другие элементы на отдельных страницах, называемых «слайдами» по аналогии со слайд — проекторами, вышедшими сегодня из употребления благодаря внедрению компьютерных презентаций. Power Point дает возможность создавать слайды, содержащие перемещаемые таблицы и обтекающий текст, а также редактировать, демонстрировать и распечатывать слайды.
Переходы между слайдами при демонстрации презентации с компьютера могут быть анимированы различными способами. Можно анимировать также отдельные элементы на слайдах, чтобы привлечь к ним внимание аудитории. Как и в других программах, входящих в MS Office, Power Point предоставляет множество готовых вариантов дизайна и шаблонов содержания.
Microsoft Power Point позволяет транслировать презентации на широкую аудиторию через Интернет.
По мере развития Microsoft Office программа приобретала новые элементы, общие для всех приложений Office.
В Power Point 2007 появилось усовершенствованное средство просмотра (Power Point Viewer), позволяющее пользователям, у которых не установлен Power Point, ознакомиться с PowerPoint-презентацией. Авторы презентации могут включить «просмотрщик» (viewer) на этапе записи презентации на CD. Помимо этого, программа приобрела целый ряд новых функций. В частности, появилась возможность просматривать полноэкранные фильмы как Power Point — презентации.
Microsoft Excel — это идеальное средство для решения учетных задач, обработки экспериментальных данных, составления отчетов и т.п.
Документ Excel называется рабочей книгой. Книга Excel состоит из листов, представляющих собой таблицы ячеек, в которых может храниться числовая и текстовая информация. Такая книга служит хорошим организационным средством. Например, в ней можно собрать все документы (рабочие листы), относящиеся к определенному проекту (задаче), или все документы, которые ведутся одним исполнителем.
Таблицы Excel удобны для хранения и сортировки информации, для проведения математических и статистических расчетов. Помимо работы с числами, в Excel хорошо развиты возможности работы с текстом, позволяющие создавать документы практически любой сложности. Excel располагает большим количеством шаблонов, с помощью которых можно быстро оформить самые разные, в том числе финансовые, документы.
Microsoft Excel имеет массу встроенных функций для математических, статистических, финансовых и других вычислений. Одна из важнейших функций программы — возможность представления данных в виде разнообразных графиков, диаграмм и карт.
Excel предлагает мощный аппарат для решения задач подбора параметров, статистического анализа данных и т.д. Программа имеет возможности доступа к внешним источникам данных (таблицам другого формата, базам данных).
За счет поддержки языка XML Microsoft Office Excel 2007 позволяет считывать данные из любой заданной пользователем XML-схемы.
Можно также использовать поддержку языка XML в Microsoft Office Excel 2007 для обновления диаграмм, таблиц и графиков по мере внесения изменений в соответствующем хранилище XML-данных.
Microsoft Office Access или просто Microsoft Access — реляционная СУБД корпорации Microsoft. Имеет широкий спектр функций, включая связанные запросы, связь с внешними таблицами и базами данных. Благодаря встроенному языку VBA, в самом Access можно писать приложения, работающие с базами данных.
Основные компоненты MS Access:
— конструктор экранных форм;
— конструктор SQL-запросов (язык SQL в MS Access не соответствует стандарту ANSI);
— конструктор отчётов, выводимых на печать.
Они могут вызывать скрипты на языке VBA, поэтому MS Access позволяет разрабатывать приложения и БД практически «с нуля» или написать оболочку для внешней БД.
MS Access является файл-серверной СУБД и потому применима лишь к маленьким приложениям. Отсутствует ряд механизмов, необходимых в многопользовательских БД, таких, например, как триггеры.
Существенно расширяет возможности MS Access по написанию приложений механизм связи с различными внешними СУБД: «связанные таблицы» (связь с таблицей СУБД) и «запросы к серверу» (запрос на диалекте SQL, который «понимает» СУБД). Также MS Access позволяет строить полноценные клиент-серверные приложения на СУБД MS SQL Server. При этом имеется возможность совместить с присущей MS Access простотой инструменты для управления БД и средства разработки.
Microsoft Publisher – это удобная настольная издательская система, предназначенная для бизнес-пользователей, желающих выпускать собственные маркетинговые материалы, не обращаясь за помощью к профессиональным дизайнерам. Microsoft Publisher широко используется на предприятиях малого бизнеса и в домашних условиях, позволяя быстро и без проблем создавать высококачественные бюллетени, объявления, буклеты, веб-узлы и другие публикации. Благодаря расширению возможностей профессиональной печати и усовершенствованию функций печати и работы с Вебом, Publisher может теперь предоставить бизнес-пользователю полный набор эффективных инструментов маркетинга и организации процесса продаж. Кроме того, в рамках программы Publisher Service Provider пользователям приложения Publisher оказывается содействие в поиске типографий, в которых могут печататься материалы, подготовленные с помощью приложения Publisher.
На рисунке 8.1 изображено окно работы в Microsoft Publisher.
Рисунок 8.1 – Окно работы в Microsoft Publisher
Publisher позволяет существенно повысить производительность труда и упростить работу пользователей. Этому способствуют следующие особенности данного приложения:
— включение хорошо знакомых пользователям средств из пакета Office. Благодаря этому упрощается освоение данного приложения пользователями, знакомыми с другими приложениями Office;
— использование согласованных друг с другом элементов управления – пользовательского интерфейса, меню, панелей инструментов и новой области задач – формирует привычную для пользователей среду пакета Office, одновременно поддерживая уникальные возможности создания публикаций, имеющиеся в приложении Publisher;
— обеспечение большего числа вариантов открытия, редактирования и форматирования основных документов Word в приложении Publisher с помощью мастера импорта документов Word;
— улучшенная поддержка вставки текста в документы Publisher из других приложений Office с сохранением исходного форматирования – с помощью буфера обмена Office и смарт-тега параметров вставки.
Продукты семейства Microsoft Office содержат однотипные панели инструментов, а также целый набор инструментов, общих для всех приложений (механизмы проверки правописания, средство для рисования, редактор диаграмм, библиотека клипартов, рисунков и т.д.).
Поэтому, научившись работе с одним из приложений, пользователи могут легко освоить другие составляющие пакета.
Следует отметить, что пользователям, имеющим подключение к Интернету, доступна не только часть ресурсов Microsoft Office, которая установлена на локальном диске ПК, а также та часть, которая расположена в Сети. Пользователь, подключенный к Интернету, имеет возможность непосредственно из MS Office обратиться к дополнительным сервисам, шаблонам, клипартам и т.п.
Все приложения Microsoft Office обеспечивают обмен данными между отдельными приложениями. Любое приложение пакета позволяет поместить в документ (будь то текст, электронная таблица, презентация или база данных) рисунок, видеофрагмент или звуковой ролик.
Пользователь, подключенный к Сети, имеет возможность непосредственно из MS Office обратиться к дополнительным сервисам.
Работая в сетевых операционных системах, приложения семейства Microsoft Office поддерживают совместную групповую работу над общими документами, расположенными не только на локальном диске рабочей станции, но и на соседнем компьютере или на сервере сети. Электронной таблицей Microsoft Excel или базой данных Microsoft Access могут одновременно пользоваться несколько человек. Microsoft Word позволяет создавать документ, над разными частями которого могут одновременно работать разные исполнители.
За счет интеграции приложений Microsoft Office пользователи пакета могут создавать весьма сложные составные документы, содержащие данные из различных приложений. Способ обмена данными между приложениями Microsoft Office (механизм связывания и внедрения объектов) предоставляет пользователю возможность вставлять в документ, созданный в одном приложении, фрагменты, созданные в других приложениях.
В общем виде описанные возможности можно сформулировать следующим образом. Фрагмент, созданный в приложении-источнике, можно поместить в документ приложения — приемника как объект, в котором вместе со вставляемыми данными хранится информация о приложении, создавшем этот объект.
Это позволяет редактировать объект средствами создавшего его приложения. Объекты могут представлять собой рисунок, текст, диаграмму, интервал ячеек, звуковой файл или даже видеоклип. Например, в документ Word может быть внедрена диаграмма Excel, слайд презентации PowerPoint или выборка из базы данных.
Механизм связывания оригинального объекта и его копии обеспечивает эффективную работу с составными документами, в которых используются различные источники. В частности, можно настроить режим, при котором данные, помещенные в Word-документ из таблицы Excel, будут обновляться автоматически в составном документе при обновлении источника — таблицы Excel.
Этот прием широко используется на практике. Например, очень удобно подготовить отчет в Word, который будет содержать данные о продажах на текущий день. В Word-документ помещается соответствующий раздел электронной таблицы Excel, который оперативно обновляется отделом продаж. Связи между таблицей и отчетом позволяют при каждом изменении электронной таблицы обновлять отчет.
Приложения Microsoft Office могут взаимодействовать и с приложениями, не входящими в пакет, в том числе других производителей. Например, встроенные средства экспорта/импорта позволяют обрабатывать документы, подготовленные в форматах других программ. В частности, Excel позволяет загружать и обрабатывать документы в форматах других табличных процессоров.
И наконец, внутрь документа MS Office могут быть вставлены гиперссылки на любые документы.
Хотя приложения Microsoft Office имеют очень широкий набор функций, очевидно, что никакой программный продукт не может удовлетворить все специфические запросы разных категорий пользователей. Поэтому в приложения пакета Microsoft Office встроен универсальный инструмент для создания собственных приложений VBA (аббревиатура от Visual Basic for Applications, что означает «Visual Basic для приложений»). VBA — это язык программирования, встроенный в целый ряд программ, в том числе в приложения Microsoft Office.
Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:
Источник: studopedia.ru
Программная среда. Интерфейс MS Office
Основным средством разработки приложений в MS Office является комплексное решение на основе языка Visual Basic, а именно — Visual Basic for Application (VBA).
Эта технология включает
· интерпретатор[16] Visual Basic,
· интегрированную среду разработки с встроенным отладчиком,
· библиотеки времени выполнения (runtime library) и
· библиотеки типов, представляющие объекты пакета.
Эти средства позволяют расширять функциональность пакета и адаптировать его к решению специализированных задач.
Приложения Microsoft Office имеют унифицированный интерфейс, суть которого заключается в следующем: сходные функции имеют одинаковое обозначение (название команды или значок на кнопке), а несходные функции имеют различные обозначения. В большей степени унификация коснулась интерфейсов таких приложений, как Microsoft Word, Microsoft Excel и Microsoft PowerPoint.
Одним из достоинств пакета Microsoft Office является последовательное использование графического интерфейса пользователя (Graphical User Interface, GUI), представляемого операционной системой и различных элементов управления. Как правило, отдельные элементы группируются в более крупные конструкции, такие как окна, панели инструментов, меню. Рассмотрим характеристику каждой из этих групп.
Оконный интерфейс
Оконный интерфейс — такой способ организации пользовательского интерфейса программы, когда каждая интегральная часть располагается в окне — собственном субэкранном пространстве, находящемся в произвольном месте «над» основным экраном. Несколько окон одновременно располагающихся на экране могут перекрываться, находясь «выше» или «ниже» друг относительно друг В MS Office использует окна следующих типов:
- окно приложения;
- окно документа;
- диалоговое окно;
- справка;
- форма.
Лента
Лента — это многостраничная область, которая расположена в верхней части главного окна. Каждая вкладка (страница) ленты содержит большое количество кнопок и других управляющих элементов, которые необходимы для работы с определенными инструментами.
При запуске программы Microsoft Office лента автоматически открывается на вкладке Главная. Каждое приложение имеет свой набор вкладок ленты.
Элементы управления
Элементы управления — это объекты оконного интерфейса, реализующие типовые операции с интерфейсом: щелчок мышью, выбор из списка, выбор вариантов, прокрутка и т.п.
К элементам управления относятся следующие:
· текстовые поля (или поля ввода),
· списки и раскрывающиеся списки,
· счетчики и прочие, специфичные для некоторых приложений или условий.
ВВЕДЕНИЕ В ОФИСНОЕ ПРОГРАММИРОВАНИЕ
Офисное программирование — это процесс разработки приложений, предназначенных для автоматизации офисной деятельности с использованием специализированных пакетов (MS Office, OpenOffice.org или подобных).
Офисное программирование имеет ряд особенностей, отличающих его от программирования в общем смысле:
· цели разработки;
· область применения;
· макроязык;
· среда разработки;
· поддержка объектно-ориентированного программирования.
Рассмотрим эти особенности на примере MS Office.
Цели разработки
В офисной среде программный проект неразрывно связан с документом, хранится как часть документа и не может существовать независимо от него. Документ, а не программа, является целью разработки.
Стандартные возможности среды по работе с документами велики. Однако возможность изменить типовой документ, снабдив его дополнительными функциями – это одна из важнейших задач офисного программирования. Для ее решения офисная среда представляет совокупность библиотек классов, которые составляют каркас (Framework) текстовых документов, электронных таблиц, презентаций, баз данных и приложений на основе этих документов.
Всякий раз, когда создается новый документ, его каркас составляют объекты библиотек, заданные по умолчанию. Этот каркас можно существенно изменить, добавив в документ новые свойства. Расширение каркаса не требует от программиста значительных усилий – достаточно включить в него необходимые библиотеки классов.
Область применения
Область применения офисного программирования широка – от настройки отдельных документов до решения задач автоматизации офисной деятельности масштаба предприятия, в т.ч. ориентированных на совместную работу в глобальной сети.
Макроязык (Visual Basic for Application)
Visual Basic for Applications (VBA, Visual Basic для приложений) — немного упрощённая реализация языка программирования Visual Basic, встроенная в линейку продуктов Microsoft Office (включая версии для Mac OS), а также во многие другие программные пакеты, такие как AutoCAD, SolidWorks, CorelDRAW, WordPerfect.
VBA является интерпретируемым [17] языком. Как и следует из его названия, VBA близок к Visual Basic.
Visual Basic for Application (VBA) — стандартный макроязык пакета Microsoft Office, предназначенный для расширения функциональных возможностей приложения в котором используется. Он позволяет создавать программные продукты, решающие практически все задачи, встречающиеся в среде Windows. С помощью VBA можно:
· создать собственное диалоговое окно и придать ему требуемый внешний вид;
· создать макросы, расширяющие функциональные возможности приложения, в которое встроен VBA;
· изменить меню приложения Microsoft Office;
· управлять другим приложением Microsoft Office или принадлежащими ему данными;
· объединить данные из нескольких приложений Microsoft Office в одном документе;
· автоматически создавать или изменять страницы Web, совместно используя приложения Microsoft Office и VBA.
К достоинствам языка можно отнести сравнительную лёгкость освоения, благодаря которой приложения могут создавать даже пользователи, не программирующие профессионально. К особенностям VBA можно отнести выполнение скрипта[18] именно в среде офисных приложений.
Недостатком являются проблемы с обратной совместимостью разных версий. Эти проблемы в основном связаны только с тем, что код программы обращается к функциональным возможностям, появившимся в новый версии программного продукта, которые отсутствуют в старой. Также к недостаткам часто относят и слишком высокую открытость кода для случайного изменения, тем не менее, многие программные продукты (например, Microsoft Office и IBM Lotus Symphony) позволяют пользователю использовать шифрование исходного кода и установку пароля на его просмотр.
Среда разработки
Среда приложений Office ориентирована в первую очередь на пользователей, а не на программистов и в ней можно создавать документы без всякого программирования. Поэтому программист обычно начинает работать с документами не на пустом месте, а с их заготовками, созданными пользователями, т.е. и сам программист может выступать в роли пользователя. Средства совместной работы над документами Office обеспечивают одновременную работу программистов и пользователей.
Среда MS Office предлагает два способа создания программ, отличающихся подходом к процессу:
· использование макрорекордера и
· ручное кодирование (на языке VBA).
Эти подходы ориентированы на разные категории: непосредственно пользователей и программистов соответственно.
Макрорекордер (MacroRecorder) – это программный инструмент, записывающий действия пользователя при работе с документами и приложениями, с сохранением записи в виде макроса – исходного кода на языке VBA. При вызове сохраненного макроса воспроизводится вся сохраненная последовательность действий.
Макрорекордер представляет возможность создания программного проекта или, по крайней мере, его отдельных компонентов автоматически, без программирования. Для записи и воспроизведения макроса не требуется специальных знаний, поэтому пользователь может самостоятельно создавать программы (макросы), в общем случае даже не представляя себе как они работают. Для программиста макрорекордер полезен тем, что позволяет создавать фрагменты программы автоматически, тем самым увеличивая скорость разработки и уменьшая время отладки.
Интегрированная среда разработки на VBA (Visual Basic Environment, VBE) — встроенное в MS Office средство для написания, тестирования и отладки приложений на VBA. Среда VBE представляет все возможности для создания законченных офисных приложений, включая средства визуального проектирования пользовательского интерфейса. VBE ориентирована на использование программистами для разработки офисных приложений (это отнюдь не означает, что пользователи не могут применять VBE).
Поддержка ООП
Разработка приложений для MS Office тесно связана с парадигмой объектно-ориентированного программирования.
Все документы (более того, сами компоненты пакета) в MS Office – суть объекты, наделенные собственными наборами
· свойств (характеристик объекта),
· методов (подпрограмм управления свойствами) и
· событий (подпрограмм, обрабатывающих изменения состояния объекта в результате некоторых действий).
Соответственно, для обеспечения более полной интеграции с пакетом, входной язык (VBA) также поддерживает ООП.
Все объекты приложения MS Office образуют иерархическую структуру, которая определяет связь между ними и способ доступа. Такая структура называется объектной моделью (object model). За рамки объектной модели выходят, но также могут использоваться в офисных приложениях, внешние объекты, поддерживающие технологии DDE, OLE/ActiveX и ряд других.
В объектно-ориентированную концепцию удачно вписывается технология визуального программирования. Все отображаемые элементы графического интерфейса, такие как формы, элементы управления, меню и панели инструментов являются объектами, наделенными набором свойств и методов и способными реагировать на события (например, щелчки мыши, нажатия клавиш и т.п.).
При визуальном подходе не требуется программного задания (хотя это и возможно) их основных свойств (например, ширина или высота, цвет фона и т.п.). Эти свойства можно задать при помощи мыши (например, ширину и высоту формы путем операции «перетаскивания» маркеров) или установить их в окне свойств (название формы, цвет фона формы и т. д.). Таким образом, визуальное программирование делает проектирование интерфейса программы более наглядным и быстрым. При этом сохраняется возможность управлять всеми объектами и программно.
БАЗОВЫЕ ПОНЯТИЯ
Алгоритм, программа
Алгоритм — набор инструкций, описывающих порядок действий исполнителя для достижения результата решения задачи за конечное время.
Обычно формулируют несколько общих свойств алгоритмов, позволяющих отличать алгоритмы от других инструкций.
Такими свойствами являются:
• Дискретность (прерывность, раздельность) – алгоритм должен представлять процесс решения задачи как последовательное выполнение простых (или ранее определенных) шагов. Каждое действие, предусмотренное алгоритмом, исполняется только после того, как закончилось исполнение предыдущего.
• Определенность (детерминированность) – каждое правило алгоритма должно быть четким, однозначным и не оставлять места для произвола. Благодаря этому свойству выполнение алгоритма носит механический характер и не требует никаких дополнительных указаний или сведений о решаемой задаче.
• Результативность (конечность) – алгоритм должен приводить к решению задачи за конечное число шагов.
• Массовость – алгоритм решения задачи разрабатывается в общем виде, то есть, он должен быть применим для некоторого класса задач, различающихся только исходными данными. При этом исходные данные могут выбираться из некоторой области, которая называется областью применимости алгоритма.
• Правильность. Алгоритм правильный, если его выполнение дает правильные результаты решения поставленной задачи
Алгоритм может быть записан различными способами:
· на естественном языке в виде описания;
· в виде графических блок-схем;
· на специальном алгоритмическом языке.
Программа – это законченная последовательность команд (инструкций) языка программирования, описывающая алгоритм решения поставленной задачи.
VBA
Алфавит, идентификаторы
Алфавит — это полный набор допустимых символов, принятых в языке программирования для обозначения данных и действий над ними.
Алфавит языка VBA включает следующий набор символов:
· прописные (A-Z) и строчные (а-z) буквы латинского алфавита;
· цифры от 0 до 9;
· знаки арифметических операций (в порядке возрастания приоритета): +, -, *, /, , ^;
· знаки операций отношения: =, ;
· знаки препинания и разделители: , , _.:; ();
· ‘ — апостроф в качестве символа комментария.
В алфавит языка входят также зарезервированные слова, которые не могут быть использованы в качестве идентификаторов. Примеры зарезервированных слов: Dim, Sub, Function, If и т.д.
Идентификатор – имя, которое дается элементам в создаваемых процедурах.
Для идентификаторов:
– буквы, цифры, символы подчеркивания (_)
– длина до 255 символов
– первый символ – буква
– пробелы, точки, знаки операций
– зарезервированные (ключевые) слова
Идентификатор должен быть уникален в пределах его модуля (в пределах области действия).
Примеры идентификаторов:
Var1, Ald _ Item2, SalesHistory, Counter, i, BirthDay и т.п.
Ошибки: New Item (пробел), 3SMTP.PRG (начинается не с буквы, точка), Dim (ключевое слово), Week/Day (оператор деления /), _Pay (начинается не с буквы).
Идентификатор нечувствителен к смене регистра FirstMyVar – то же, что и Firstmyvar или firstmyvar.
Источник: zdamsam.ru
Основы программирования в Microsoft Office
1.1. Зачем программировать в Microsoft Office Ответ на этот вопрос прост: чтобы не делать лишней работы. Программирование в Office — это, прежде всего, уменьшение количества повторяющихся действий (и ручной работы, которая для этого требуется).
Вот примеры некоторых типичных ситуаций, когда использование программирования просто напрашивается: вам с определенной периодичностью приходится изготавливать документы, очень похожие друг на друга: приказы, распоряжения в бухгалтерию, договоры, отчеты и т. п. Часто информацию можно взять из базы данных, тогда использование программирования может дать очень большой выигрыш во времени. Иногда данные приходится вводить вручную, но и тогда автоматизация дает выигрыш во времени и в снижении количества ошибок; разновидность такой же ситуации: одни и те же данные нужно использовать несколько раз. Например, вы заключаете договор с заказчиком. Одни и те же данные (наименование, адрес, расчетный счет, номер договора, дата заключения, сумма и т. п.) могут потребоваться во многих документах: самом договоре, счете, счете-фактуре, акте сдачи выполненных работ и т. д. Логично один раз ввести эту информацию (скорее всего, в базу данных), а затем автоматически формировать (например, в Word) требуемые документы; когда нужно сделать так, чтобы вводимые пользователем данные автоматически проверялись. Вероятность ошибки при ручном вводе данных зависит от многих факторов, но, согласно результатам некоторых исследо-
Основыпрограммирования в Microsoft Office | 13 |
ваний, она в среднем составляет около 2%. «Вылавливать» потом такие ошибки в уже введенных данных — очень тяжелый труд, поэтому лучше сразу сделать так, чтобы они не возникали. В общем, любое действие, которое вам приходится повторять несколько раз, — это возможный кандидат на автоматизацию. Например, занесение сотен контактов в Outlook, или замена ресурса в десятках проектов Project, или анализ информации из базы данных за разные периоды в таблице Excel — это те ситуации, когда знание объектных моделей приложений Office спасет вас от нескольких часов или даже дней скучного труда. Конечно, есть еще практиканты и аналогичный бесплатный трудовой ресурс, но хочется ли вам потом заниматься еще и поиском ошибок за ними? Кроме того, программирование несет и другие преимущества для сотрудника, который использует его в работе: повышается авторитет сотрудника в глазах руководства и других коллег; если программы этого сотрудника активно используются на предприятии (им самим или другими работниками), то этим самым он защищает себя от сокращений, снижения зарплаты и т. п., ведь поддерживать и изменять программы в случае необходимости будет некому.
1.2. Что такое язык VBA
Поскольку эта книга предназначена для обычных пользователей, то без объяснения этого вопроса не обойтись. Формальное определение такое. VBA (Visual Basic for Applications) — это диалект языка Visual Basic, расши- ряющий его возможности и предназначенный для работы с приложениями Microsoft Office и другими приложениями от Microsoft и третьих фирм. В принципе, при программировании в Office можно вполне обойтись и без языка VBA. Подойдет любой COM-совместимый язык, например: обычный Visual Basic, VBScript, Java, JScript, C++, Delphi и т. п. Можно использовать и .NET-совместимые языки программирования: VB.NET, C# и т. п. Вам будут доступны все возможности объектных моделей приложений Office. Например, если сохранить следующий код в файле с расширением vbs и запустить его на выполнение, то будет запущен Word, в котором откроется новый документ и будет впечатан текст: Dim oWord Set oWord = CreateObject(«Word.Application») oWord.Visible = true oWord.Documents.Add oWord.Selection.TypeText («Привет от VBScript»)
14 | Глава 1 |
Тем не менее, VBA — это обычно самый удобный язык для работы с приложениями Office. Главная причина проста — язык VBA встроен в приложения Office, и код на языке VBA можно хранить внутри документов приложений Office: в документах Word, книгах Excel, презентациях PowerPoint и т. п. Конечно же, этот код можно запускать из документов на выполнение, поскольку среда выполнения кода VBA (на программистском сленге — хост ) встроена внутрь этих приложений.
В настоящее время VBA встроен: во все главные приложения Microsoft Office — Word, Excel, Access, PowerPoint, Outlook, FrontPage, InfoPath; в другие приложения Microsoft, такие как Visio и Project; в более 100 приложений третьих фирм, например, в CorelDRAW и CorelWordPerfect Office 2000, AutoCAD и т. п. Но есть также и множество других преимуществ. VBA — универсальный язык.
Освоив его, вы не только получите ключ ко всем возможностям приложений Office и других, перечисленных ранее, но и будете готовы к тому, чтобы: • создавать полноценные приложения на Visual Basic (поскольку эти языки — близкие родственники); • использовать все возможности языка VBScript (это вообще «урезанный» VBA). В результате в вашем распоряжении будут универсальные средства для создания скриптов администрирования Windows, Web- страниц (VBScript в Internet Explorer), Web-приложений ASP, для при- менения в пакетах DTS и заданиях на SQL Server, а также для создания серверных скриптов Exchange Server и многое-многое другое.
VBA изначально был ориентирован на пользователей, а не на профессиональных программистов (хотя профессионалы пользуются им очень активно), поэтому создавать программы на нем можно быстро и легко. Кроме того, в Office встроены мощные средства, облегчающие работу пользователя: подсказки по объектам и по синтаксису, макрорекордер и т. п. При создании приложений на VBA вам, скорее всего, не придется заботиться об установке и настройке специальной среды программирования и наличии нужных библиотек на компьютере пользователя — Microsoft Office есть практически на любом компьютере. Несмотря на то, что часто приложения VBA выполняются медленнее, чем бы вам хотелось, они нересурсоемки и очень хорошо работают, например, на сервере терминалов. Но, как правило, для программ на VBA особых требований на производительность и не ставят: для написания игр, драй-
Основыпрограммирования в Microsoft Office | 15 |
веров, серверных продуктов он не используется. По моему опыту, возникающие проблемы с производительностью VBA-приложений — это чаще всего не проблемы VBA, а проблемы баз данных, к которым они обращаются.
Если проблемы действительно в VBA (обычно тогда, когда вам требуется сложная математика), то всегда есть возможность написать важный код на C++ и обращаться к нему как к обычной библиотеке DLL или встраиваемому приложению (Add-In) для Word, Excel, Access и т. п. Программы на VBA по умолчанию не компилируются, поэтому вносить в них исправления очень удобно. Не нужно разыскивать исходные коды и перекомпилировать программы. В среде программистов-профессионалов считается, что быстрее всего научиться создавать профессиональные приложения можно именно при помощи VBA и объектов приложений Office. Другие языки программирования (C++, Java, Delphi) придется осваивать намного дольше, а их возможности во многом избыточны для большинства повседневных задач, которые встречаются на любом предприятии. Кроме того, использование возможностей объектов Office (графического интерфейса, средств работы с текстом, математических функций и т. п.) позволит резко снизить трудоемкость при создании приложений.
1.3. Макрорекордер: быстрое создание макросов
В большинство программ Microsoft Office (исключая Access и FrontPage) встроено замечательное средство, которое позволит вам создавать программы, вообще ничего не зная о программировании. Это средство называется макрорекордером. Макрорекордер , как понятно из его названия, — это средство для записи макросов.
Макрос — всего лишь еще одно название для VBA-программы, а макрорекордер — средство для его автоматического создания. Приложения Microsoft Office 2003 по умолчанию настроены так, что не позволяют запускать макросы. Поэтому перед тем, как приступать к созданию макросов, в меню Сервис | Макрос | Безопасность переставьте переключатель Уровень безопасности в положение Средняя или Низкая , а потом закройте и снова откройте данное приложение. Это потребуется сделать только один раз в начале работы.
Принцип работы макрорекордера больше всего похож на принцип работы магнитофона: мы нажимаем на кнопку — начинается запись тех действий,
16 | Глава 1 |
которые мы выполняем. Мы нажимаем на вторую кнопку — запись останавливается, и мы можем ее проиграть (т. е. повторно выполнить ту же последовательность действий). Конечно, макрорекордер позволяет написать только самые простые VBAпрограммы. Однако и он может принести много пользы.
Например, можно «положить» на горячие клавиши те слова, словосочетания, варианты оформления и т. п., которые вам часто приходится вводить (должность, название фирмы, продукт, ФИО директора и ответственного исполнителя и т. д.), этим вы сэкономите много времени. Как показывает опыт, подавляющее большинство обычных пользователей и не подозревает о существовании макрорекордера, несмотря на то, что его применение позволило бы сэкономить им массу времени.
Перед созданием макроса в макрорекордере: необходимо очень тщательно спланировать макрос, хорошо продумав, что вы будете делать и в какой последовательности. Если есть возможность, определите подготовительные действия.
Например, если нужно вставить текущую дату в начало документа, может быть, имеет смысл первой командой макроса сделать переход на начало документа (+); посмотрите, нет ли готовой команды, которую можно сразу назначить клавише или кнопке на панели инструментов без создания макроса. Сделать это можно при помощи меню Сервис | Настройка . С вкладки Команды можно перетащить нужную команду на требуемую панель управления, и, нажав на этой же вкладке кнопку Клавиатура , в окне Настройка клавиатуры назначить длякоманды нужнуюкомбинацию клавиш; если вы собираетесь при помощи макроса менять оформление текста, то правильнее вначале создать новый стиль с вашим оформлением, а потом уже применить этот стиль к тексту.
В этом случае опять-таки можно обойтись без макроса, просто назначив стиль комбинации клавиш. Делается это при помощи того же диалогового окна Настройка клавиатуры , как и в предыдущем случае.
Чтобы создать макрос в макрорекордере (для тех программ Microsoft Office, для которых это средство предусмотрено, например, Word, Excel, PowerPoint, Project): 1. В меню Сервис | Макрос выберите команду Начать запись . В открывшемся окне Запись макроса (рис. 1.1) вам потребуется определить: • Имя макроса . Правило такое: имя не должно начинаться с цифры, не должно содержать пробелы и символы пунктуации. Максимальная длина в Excel — 64 символа, в Word — 80 символов. Можно писать порусски;
Основыпрограммирования в Microsoft Office | 17 |
• будет ли макрос назначен кнопке на панели управления или комбинации клавиш. Выполнить это, а также задать другие средства для вызова макроса можно и потом — об этом будет рассказано в следующем разделе; • где сохранить макрос.
В Word в вашем распоряжении текущий файл и шаблон для всех вновь создаваемых документов — Normal.dot, в Excel — текущая книга, возможность создать макрос одновременно с созданием новой книги и личная книга макросов PERSONAL.XLS (макросы из этой скрытой книги будут доступны во всех книгах). Подробнее про то, где может храниться программный код, мы поговорим в разд.
2.2 ; • Описание . В это поле лучше ввести информацию о том, для каких целей создается этот макрос — это подарок не только для других пользователей, но и для себя (через несколько месяцев). Рис. 1.1. Диалоговое окно Запись макроса 2. После нажатия кнопки OK или назначения кнопки или клавиатурной комбинации начнется запись макроса. Указатель мыши при этом примет вид магнитофонной кассеты и появится маленькая панель Остановить запись . На ней всего две кнопки — Остановить запись и Пауза . Если вы случайно закрыли эту панель, остановить запись можно через меню Сер- вис | Макрос | Остановить запись . 3. Самый простой способ запустить макрос, которому не назначена кнопка или клавиатурная комбинация, — в меню Сервис выбрать Макрос | Макросы (или нажать комбинацию клавиш +), в открывшемся окне
18 | Глава 1 |
Макрос (см. рис. 1.2) в списке выбрать нужный макрос и нажать кнопку Выполнить . Из этого же окна можно просматривать и редактировать макросы, удалять или перемещать их и т. п. Если макросов создано много, то получить список всех назначений клавиш (включая назначения для встроенных макросов Word) можно при помощи меню Сервис | Макрос | Макросы , затем в окне Макрос в списке Макросы из выбрать Команд Word , а в списке Имя выбрать макрос ListCommands и нажать кнопку Выполнить . В ответ на приглашение нужно выбрать Текущие настройки меню и клавиш (иначе будет выведен полный список команд Word на 26 страниц).
В ваш документ будет вставлена таблица с текущими назначениями клавиш, которую можно распечатать. Если у вас уже есть значительное количество созданных при помощи макрорекордера макросов, то после освоения языка VBA имеет смысл подумать над ними и, может быть, внести изменения.
Чаще всего стоит обратить внимание на следующие моменты: если в вашем макросе повторяются какие-либо действия, возможно стоит организовать цикл; может быть, есть смысл в ходе выполнения уточнить что-либо у пользователя (при помощи встроенной функции VBA InputBox() или элементов управления); чтобы в ходе выполнения макроса не возникало ошибок, можно реализовать в нем проверку текущих условий. Как все это сделать, будет рассказано в следующих главах.
И еще один очень важный момент, связанный с макрорекордером. Помимо того, что он позволяет создавать простенькие программы, пригодные для самостоятельного использования без всяких доработок, макрорекордер — это еще и ваш разведчик в мире объектных моделей приложений Office.
Опытные разработчики часто пользуются им для того, чтобы понять, какие объекты из огромных объектных моделей приложений Office можно использовать для выполнения тех или иных действий. Приведу пример: вам нужно автоматизировать создание диаграмм в Excel. Поскольку в русской версии Excel для создания диаграммы вручную вы используете команду Вставка | Диаграмма , то, скорее всего, в справке по VBA вы начнете в первую очередь искать объект Diagram . И вы его найдете и, возможно, потратите определенное время на его изучение, прежде чем поймете, что это не та диаграмма! Объект Diagram представляет то, что в русской версии Excel называется «Схематическая диаграмма» (доступна из того же меню Вставка ), а обычная диаграмма — это объект Chart . А вот если бы вы пустили вперед разведчика (т. е. создали бы диаграмму с записью в макрорекорде-
Источник: studfile.net