
- •Среда ms Excel Теоретический материал
- •1. Внешний вид окна программы Excel.
- •2. Настройка среды Microsoft Excel
- •Вопросы и задания для самоконтроля
- •Работа с файлами Теоретический материал
- •1. Сохранение внесенных в документ изменений
- •2. Использование шаблона
- •Вопросы и задания для самоконтроля
- •Особенности работы с данными Теоретический материал
- •1. Ввод данных в ячейки рабочего листа
- •2. Использование автоформатов
- •3. Именование ячеек и диапазонов
- •Вопросы и задания для самоконтроля
- •Возможности работы с формулами Теоретический материал
- •1. Ввод формул
- •2. Редактирование формул
- •3. Использование формул массива
- •Вопросы и задания для самоконтроля
- •Использование стандартных функций в Excel Теоретический материал
- •1. Стандартные функции Excel и примеры их использования
- •Вопросы и задания для самоконтроля
- •Возможности работы с листами Теоретический материал
- •1. Изменение названия листа
- •2. Копирование и перемещение рабочих листов
- •3. Насройка параметров листа.
- •Вопросы и задания для самоконтроля
- •Печать документов Теоретический материал
- •1. Режим предварительного просмотра документов
- •2. Печать документов
- •Вопросы и задания для самоконтроля
- •Работа с графическими элементами Теоретический материал
- •1. Создание графики средствами Excel
- •Вопросы и задания для самоконтроля
- •Работа с диаграммами Теоретический материал
- •1. Типы диаграмм и графиков
- •2. Форматирование элементов диаграммы
- •3. Способы создания диаграмм
- •Вопросы и задания для самоконтроля
- •Работа с базами данных в Excel Теоретический материал
- •1. Средства Excel для организации баз данных
- •2. Работа с данными в базе данных.
- •Вопросы и задания для самоконтроля
- •Сводные таблицы Теоретический материал
- •1. Понятие сводной таблицы
- •2. Создание сводных таблиц
- •3. Сводные диаграммы
- •Вопросы и задания для самоконтроля
- •Макрорекордер Теоретический материал
- •1. Изменение макроса.
- •Вопросы и задания для самоконтроля
3. Сводные диаграммы
Для наиболее эффективного анализа данных Microsoft Excel 2003 предоставляет такое средство, как сводные диаграммы. Сводные диаграммы можно строить на основе уже существующих сводных таблиц, а также на основе исходных таблиц. Во втором случае сводная таблица строится параллельно с диаграммой. При создании поля страницы появляется возможность визуально оценивать величины данных, перелистывая страницы. После того как диаграмма уже построена, ее можно перестраивать, перетаскивая поля, аналогично тому, как это делается в сводных таблицах. Можно задавать различные виды диаграмм.
Возьмем сводную таблицу и построим для нее диаграмму. Для этого надо нажать кнопку Мастер диаграмм на панели инструментов Сводные таблицы. Диаграмма уже построена, причем она отвечает исходной сводной таблице — в ней имеется поле страницы, поля строк и столбцов. Поле страницы расположено в левом верхнем углу рабочего листа диаграммы. Как и в сводной таблице, страницы можно перелистывать. Можно перестраивать диаграмму, меняя местами поля при помощи перетаскивания.
Сводная диаграмма связана со сводной таблицей. Она будет автоматически изменяться при обновлении сводной таблицы. Если изменить структуру сводной таблицы, то изменится и структура диаграммы, и наоборот.
Чтобы построить сводную диаграмму на основе списка или таблицы:
1. Раскройте рабочий лист с исходной таблицей и выберите команду Данные/Сводная таблица.
2. В первом диалоговом окне Мастер сводных, таблиц и диаграмм — шаг 1 из 3 установите переключатель сводная диаграмма (со сводной таблицей).
3. Нажмите кнопку Далее.
4. На следующем шаге укажите диапазон данных, и далее все действия такие же, как и для построения сводной таблицы.
В результате этих действий откроется рабочий лист с разметкой для диаграммы.
Перетащите поля с панели инструментов Сводные таблицы в подходящие области сводной диаграммы. Теперь диаграмма построена. Причем вместе со сводной диаграммой Мастер сводных таблиц и диаграмм построил сводную таблицу и разместил ее на отдельном рабочем листе. Структура этой сводной таблицы полностью соответствует структуре сводной диаграммы. Если, например, в диаграмме поменять какие-либо поля местами, то они поменяются местами и в сводной таблице.
Вопросы и задания для самоконтроля
Назовите элементы сводных таблиц.
Для каких целей прменяются сводные таблицы?
Назовите порядок действий, которые нужно выполнить для создания сводной таблицы.
Назовите порядок действий, которые нужно выполнить для создания сводной диаграммы.
Какие типы источников данных для сводной таблицы Вы знаете?
Какие варианты размещения готовой сводной таблицы Вам известны?
Можно ли изменить структуру сводной таблицы, изменив структуру диаграммы?
СРС № 25
Макрорекордер Теоретический материал
1. Изменение макроса.
Рассмотрим пример макроса написанного в редакторе VBA, а затем внесем изменения в написанный макрос.
Sub макрос()
' макрос Макрос
' Макрос записан 21.03.2006 (User)
ActiveSheet.Unprotect
Range("E7").Select
Selection.EntireRow.Insert
Range("F6").Select
Selection.Copy
Range("F7").Select
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub
Любая процедура начинается с ключевого слова Sub (от subroutine — процедура), а заканчивается словами End Sub. В первой строке макроса указан заголовок процедуры.
Весь текст в строке, расположенный справа от знака апострофа ('), является комментарием и игнорируется при выполнении программы.
Оператор ActiveSheet.Unprotect снимает защиту с активного рабочего листа. В данном случае ActiveSheet представляет собой объект типа Worksheet ("рабочий лист"), а Unprotect — метод, выполняющий снятие защиты с объекта. Точка между именем объекта и названием метода означает, что метод "принадлежит" данному объекту.
В следующей строке для объекта Range("E7"), представляющего диапазон, состоящий из единственной ячейки Е7, используется метод Select, т. е. в результате действия данного оператора ячейка Е7 станет выделенной (и активной).
Далее, оператор Selection.EntireRow.Insert по отношению к текущему выделенному объекту (т. е. ячейке E7) производит вставку (целой) строки.
В следующих четырех строках опять выделяется ячейка, на сей раз F6 (оператор Range("F6").Select), ее содержимое копируется в буфер обмена (selection.Сору) и затем вставляется в ячейку F7 (операторы Range ("F7").Select и ActiveSheet.Paste).
Следующий оператор; Application.CutCopyMode = False отменяет режим копирования, а именно свойству CutCopyMode объекта Application присваивает значение False ("ложь").
Наконец, последний из выполняемых операторов нашего макроса ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True устанавливает защиту активного рабочего листа, хотя и без пароля (с пустым паролем). Перечисляемые параметры указывают, что защита рабочего листа устанавливается в отношении объектов (DrawingObjects), содержимого (contents) и сценариев (Scenarios).
Редактирование макроса начнем с последнего оператора. У метода Protect есть параметр Password ("пароль"), и задать значение этого параметра (равное 1) можно так: ActiveSheet.Protect Password := "1". Значение пароля нужно заключать в кавычки, поскольку пароль всегда считается текстовым (строковым) выражением, а в соответствии с правилами VBA такие выражения должны заключаться в кавычки. Аналогичным образом можно задать параметр и для метода unprotect (тогда пароль не надо будет вводить вручную каждый раз в начале работы макроса) ActiveSheet.Unprotect("1")
Для уверенности, что данный макрос всегда будет применяться к нужному рабочему листу ("Лист1") и рабочей книге ("Ex35_l.xls"), вставим в самое начало макроса оператор, активизирующий указанный лист указанной рабочей книги Workbooks("Ex35_l.xls").Worksheets("Лист!").Activate.
В начало макроса вставим операторы, определяющие адрес строки с итоговыми суммами, и затем в качестве параметров оператора Range постараемся задать адреса, отсчитанные относительно найденного.
Приведем сразу окончательный текст и дадим к нему некоторые пояснения:
Sub макрос()
Workbooks("Ex35_l.xls").Worksheets("Лист1").Activate
For i = 1 То 10000
If Mid(Range("E" & Trim(Str(i))).Formula, 1, 1) = "=" Then
Exit For
End If
Next
ActiveSheet.Unprotect("l")
Range("E" & Trim(Str(i - 1))).Select
Selection.EntireRow.Insert
Range("F" & Trim(Str(i - 2))) .Select
Selection.Copy
Range("F" & Trim(Str(i - 1))).Select
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveSheet.Protect Password := "1", DrawingОbjects:=True, Contents:=True, Scenarios:=True
End Sub
Занимающий строки с 3-й по 7-ю приведенной выше подпрограммы цикл позволяет определить адрес ячейки столбца Е с итоговой суммой (поскольку в этом столбце расположена только одна формула, то ищется просто ячейка, содержимое которой начинается со знака "=")
Основную смысловую нагрузку, как нетрудно заметить, несет вторая строка этого цикла. Здесь конструкция Trim(Str(i)) преобразовывает число i в соответствующую текстовую строку (точнее, это делает функция str(i), а функция Trim лишь убирает лишний пробел) — например, при i=i будем иметь "1", при i=2 получим "2" и т. д. Таким образом, в качестве диапазона мы будем получать последовательно El, E2 и т. д. Далее, свойство Formula объекта Range показывает нам содержимое (в данном случае — одной ячейки), причем если в ячейке находится формула, она показывается в виде текстовой строки. Первый символ этой строки мы и сравниваем с "=" и в случае совпадения прерываем перебор (выходим из цикла по оператору Exit For) — при этом текущее значение переменной i как раз и будет равно номеру строки, в которой находится формула итоговой суммы.