- •1. Основные термины и обозначения
- •1.1. Интерфейс программы
- •1.2. Рабочая книга
- •Контрольные вопросы
- •2. Ввод и форматирование данных
- •2.1. Общие положения
- •2.2. Ввод и форматирование текста
- •2.3. Ввод и форматирование чисел
- •2.4. Процедура автозаполнения
- •2.5. Формулы
- •2.6. Встроенные функции
- •2.7. Условное форматирование
- •2.8. Контрольные вопросы
- •3. Графическое отображение данных
- •3.1. Работа с диаграммами
- •3.2. Выбор формы зависимости временного ряда
- •3.3. Контрольные вопросы
- •4. Использование списков (базы данных)
- •4.1. Создание и фильтрация списка
- •4.2. Подведение итогов
- •4.3. Сводные таблицы
- •4.4. Контрольные вопросы
- •5. Анализ данных
- •5.1. Процедура Подбор параметра
- •5.2. Сценарии
- •5.3. Таблицы подстановки данных
- •5.4. Процедура Поиск решения
- •5.5. Контрольные вопросы
- •6. Основы программирования на vba
- •6.1. Общие положения
- •6.2. Макросы и редактор vba
- •6.3. Некоторые приемы программирования
- •6.4. Использование элементов управления форм в листах Excel
- •6.5. Контрольные вопросы
- •Библиографический список
- •Оглавление
5.5. Контрольные вопросы
1. Для каких задач используется процедура Подбор параметра?
2. Для чего применяются Таблицы подстановки?
3. В какую ячейку заносится формула, если значения подстановки находятся в строке (столбце)?
4. Для чего применяется Диспетчер сценариев?
5. Для каких задач используется процедура Поиск решения?
6. Какие параметры процедуры Поиск решения влияют на точность и скорость вычислений?
7. Какие ячейки называются изменяемыми?
8. Какая ячейка называется целевой?
9. Какие виды ограничений допускаются при использовании процедуры Поиск решения?
Предъявите работу преподавателю.
6. Основы программирования на vba
6.1. Общие положения
Несмотря на богатый набор возможностей стандартного интерфейса пользователя Excel, который продемонстрирован выше, может понадобиться несложный способ выполнять повторяющиеся задачи или какие-то задачи, которые не удается решить с помощью интерфейса пользователя. Для таких случаев в приложения Office интегрирован Visual Basic для приложений (VBA). Этот язык программирования, позволяющий расширять возможности приложений, работает, выполняя макросы – пошаговые процедуры, написанные на языке Visual Basic.
Пользователь может взаимодействовать с приложениями, отправляя инструкции различным объектам приложения. Эти объекты являются многочисленными, разнообразными и гибкими, но у них есть свои ограничения. Они могут делать только то, для чего были разработаны, и выполняют только написанные для них инструкции.
Объекты. Программируемые объекты связаны друг с другом в иерархию, называемую объектной моделью приложения. Объектная модель Excel содержит, среди многих других, объекты Application, Workbook, Sheet, Range. Объектная модель является общей картой приложения и его возможностей.
Свойства и методы. Управлять объектами можно, задавая их свойства и вызывая их методы. Задание свойства изменяет некоторое качество объекта. Вызов метода заставляет объект выполнить некоторое действие. Например, у объекта Workbook есть метод Close, закрывающий книгу, и свойство ActiveSheet, представляющее лист, активный в данный момент в книге. Основным свойством объекта Range, является Value (значение), которое, однако, можно не указывать. Например,
Range(“A5:A10”). Value = 0 означает, что в диапазон ячеек A5:A10 заносится значение 0.
Коллекции. Многие объекты поставляются в версиях единственного и множественного числа — Workbook (книга) и Workbooks, Worksheet (лист) и Worksheets и т. д. Версии множественного числа называются коллекциями. Они используются для выполнения действия над несколькими объектами коллекции. Позднее мы рассмотрим, как использовать коллекцию Worksheets для изменения имени каждого листа книги.
6.2. Макросы и редактор vba
Если вкладка Разработчик установлена в интерфейсе Excel (рис. 30), то нужно обратить внимание на местонахождение кнопок Visual Basic, Макрос и Безопасность макросов.
П
Рис.
30. Вкладка Разработчик
При открытии XLSM-файла система безопасности Office 2010 все равно может запретить запуск макросов в документе, сообщая или не сообщая об этом пользователю.
Можно указать специальные папки, в которых выполняются макросы, создавая надежные расположения, надежные документы или надежных издателей.
Для целей решения наших задач помните, что если при открытии книги, содержащей макрос, между лентой и листом появляется строка Предупреждение системы безопасности: запуск макросов отключен, можно нажать кнопку Включить содержимое, чтобы включить макрос.
Задание 21. Для получения дополнительных сведений о параметрах безопасности в приложении в диалоговом окне Параметры щелкните Центр управления безопасностью и выберите Настройки центра управления безопасностью.
Запись макроса. Если нажать кнопку Макрос, открывается диалоговое окно с одноименным названием, которое предоставляет доступ к подпрограммам или макросам VBA. Кнопка Visual Basic открывает редактор Visual Basic, где можно создавать и редактировать код VBA.
На вкладке Разработчик размещена кнопка Запись макроса, которая автоматически создает код VBA, позволяющий воспроизводить действия, выполненные пользователем в приложении. Запись макроса — это великолепное средство, которое можно использовать для изучения VBA. Читая сгенерированный код, можно понять язык VBA и объединить знания пользователя и программиста Office 2010. Единственное, что нужно помнить — это то, что сгенерированный код может быть запутанным, так как редактор макросов использует некоторые предположения о намерениях пользователя, которые не всегда точны.
Любая строка в коде, начинающаяся с апострофа, является комментарием и не влияет на действия макроса. В основном комментарии используются для следующих целей:
упростить понимание кода, не только для автора, но и для всех, кому впоследствии может понадобиться изменить код;
временно отключить строку кода.
Задание 22. Создание новой книги, в которой будут сохраняться макросы.
1. Нажмите кнопку Макрос и в открывшемся диалоговом окне введите Hello в поле Имя макроса.
2. Нажмите кнопку Создать, чтобы открыть редактор Visual Basic с уже введенной структурой нового макроса, рис. 31.
Мы рассматриваем только
те средства, которые используются для
азов программирования. С
Рис. 31. Код макроса
Hello
3. Сохраните эту книгу в формате XLSM-файла.
Рассмотрим текст созданного макроса. Sub — это сокращение от Subroutine (подпрограмма), которую в данном случае можно определить как "макрос". Вызов макроса Hello приведет к выполнению любого кода между строчками Sub Hello() и End Sub.
З
Рис. 32. Новый код
макроса Hello
В этом коде оператор MsgBox осуществляет вывод информации в диалоговое окно и устанавливает режим ожидания нажатия кнопки пользователем.
2. Вернитесь на вкладку Разработчик в Excel.
3. Нажмите кнопку Макрос.
4. Выберите макрос Hello в появляющемся списке.
5. Нажмите кнопку Выполнить, чтобы вывести небольшое окно сообщения, содержащее текст «Hello, world!».
6. Нажмите кнопку ОК в окне сообщения, чтобы закончить выполнение макроса. Если окно сообщения не появляется, проверьте настройки безопасности макросов и перезапустите Excel.