ActiveSheet.ChartObjects.Delete

Select Case Range("N2").Value

Теперь следует проверить работу списка с диаграммой.

Автоматизация типовых операций на листе Отчет

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

Для создания макроса Отчет_1 выполнить следующие действия:

1. На листе Анализ выбрать из списка первый вариант сводной таблицы, перейти к листу Отчет, удалить содержимое ячеек, кроме столбца А.

2. Сервис – Макрос – Начать запись…

3. В окне Запись макроса указать имя макроса Отчет_1;

4. Выполнить запись:

· перейти к листу Анализ (с помощью ярлычка листа);

· выделить ячейку В1 сводной таблицы;

· выполнить команду меню Формат – Автоформат;

· выбрать вариант Отчет 4 ( таблица уже будет выделена );

· скопировать выделенную таблицу в буфер обмена;

· выделить ячейку В1 сводной таблицы, чтобы снять выделение;

· перейти на лист Отчет;

· выделить ячейку В1;

· выполнить команду Правка – Специальная вставка, в окне специальной вставки выбрать переключатель «Значения»;

· выполнить команду Формат – Столбец – Ширина, установить ширину столбца равной 12 единицам;

· выделить ячейку В1, чтобы снять выделение;

5. Завершить запись макроса.

Усовершенствуем созданный макрос, для чего добавим в начало и конец кода команду работы режима обновления экрана, а также команды очистки листа перед построением сводной таблицы.

Аналогично следует создать макросы для отчетов по второму и третьему вариантам сводных таблиц.

Для выбора варианта отчета создадим на листе Отчет три переключателя и объединим их в группу. Для этого следует использовать элемент управления «Группа» .

Выбрав этот элемент, следует нарисовать прямоугольную область, в которую будем добавлять элементы группы - переключатели (см. рисунки). Изменить текст элемента можно, пользуясь контекстным меню. Переключатель рисуем в столбце А в рамке, щелкнув соответствующую кнопку на панели инструментов «Формы».

Далее в контекстном меню переключателя нужно выбрать команду «Формат объекта» и на вкладке «Элемент управления» установить значение «установлен», а в поле «Связь с ячейкой» адрес А1. У остальных двух переключателей эти данные уже будут заполнены, так как по умолчанию все переключатели в рамке считаются одной группой. В ячейке А1 будут появляться цифры 1, 2 или 3, согласно выбранному переключателю. Каждому переключателю следует назначить свой макрос – Отчет_1, Отчет_2 и Отчет_3 соответственно (см. рисунки).


Управление интерфейсом приложения

Чтобы разработанное приложение имело самостоятельный законченный вид, нужно добавить процедуры, управляющие интерфейсом MS Excel и рабочих листов. При запуске приложение следует развернуть во весь экран окно MS Excel а внутри него – окно рабочей книги, скрыть панели инструментов, строку формул и строку состояния.

Все эти процедуры должны выполняться не по требованию пользователя, а автоматически – как реакция на определенное событие, например открытие или закрытие рабочей книги. В VBA предусмотрены соответствующие обработчики событий, например при открытии рабочей книги (объект WorkBook) возникает событие Open, которое можно обработать в процедуре WorkBook_Open().

Запишем код этой процедуры вручную, для этого:

1. выполнить команду Сервис – Макрос – Редактор Visual Basic

2. в окне проекта («Project») выбрать объект «Эта книга» (см. рисунок)

3. в окне кода («Code») набрать следующий код

Private Sub WorkBook_Open()

Application.WindowState = xlMaximized

ActiveWindow.WindowState = xlMaximized

Application.CommandBars("Standard").Visible = False

Application.CommandBars("Formatting").Visible = False

Лист_Меню

End Sub

4. закрыть окно VBA

Для настройки интерфейса рабочих листов запишем макрос с изменениями, воспользовавшись командой Сервис – Параметры.

Для листа «Меню» запишем макрос Интерфейс_Меню

1. Перейти к листу Меню.

2. Сервис – Макрос – Начать запись…

3. В окне Запись макроса указать имя макроса Интерфейс_Меню;

4. Выполнить запись:

· Команда Сервис – Параметры;

· Скрыть элементы согласно рисунку

5. Завершить запись макроса.

Для листа «Данные» запишем макрос Интерфейс_Данные

1. Перейти к листу Данные.

2. Сервис – Макрос – Начать запись…

3. В окне Запись макроса указать имя макроса Интерфейс_Данные;

4. Выполнить запись:

· Команда Сервис – Параметры; Скрыть элементы по рисунку

5. Завершить запись макроса.

Для листа «Анализ» и «Отчет» макросы записываются аналогично, необходимо отобразить только вертикальную и горизонтальную полосы прокрутки.

Содержание полученных макросов (без заголовка и окончания) следует поместить в окно кода для соответствующего листа как процедуру WorkSheet_Activate () – см. рисунок.

Порядок действий:

1. Выполнить команду Сервис – Макрос – Макросы

2. В окне «Макрос» выделить макрос «Интерфейс_Меню» и нажать кнопку «Войти»

3. Скопировать текст макроса с оператора With ActiveWindow до End With

4. В окне проекта щелкнуть по объекту «Лист1(Меню)». Откроется окно кода этого листа

5. В списке объектов (object) выбрать WorkSheet, в списке действий (procedure) - Activate

6. После строчки Private Sub WorkSheet_Activate() вставить фрагмент кода из буфера обмена.

Эти действия выполнить для макросов Интерфейс_Данные, Интерфейс_Анализ и Интерфейс_Отчет.

Последнее, что предстоит настроить – это строка меню приложения.

З апишем макрос Меню_приложения

1. Перейти к листу Меню.

2. Сервис – Макрос – Начать запись…

3. В окне Запись макроса указать имя макроса Меню_приложения;

4. Выполнить запись:

· Команда Вид – Панели инструментов – Настройка

· Удалить пункты меню «Справка», «Данные», «Сервис», «Формат», «Вставка» (лучше двигаться от конца до начала списка)

· В меню «Файл», «Правка», «Вид» и «Окно» оставить пункты, сверяясь по рисункам.

5. Завершить запись макроса.

Открыть VBA и в текст макроса Меню_Приложения добавить вручную первые две строки:


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: