Как создать диаграмму в access
Диаграммы — это представление табличных данных в наглядной графической форме, наиболее удобной для их анализа и сравнения.
Построить диаграмму в отчете можно двумя способами: в существующий отчет вставить диаграмму (команда Вставка\Диаграмма) или предусмотреть включение диаграммы при создании нового отчета (на первом шаге построения отчета выбрать пункт Мастер диаграмм).
На практике при построении диаграмм зачастую представляется целесообразным осуществлять группировку данных, и такая возможность в Access предусмотрена. Например, по полю, имеющему тип Дата/время, можно сгруппировать данные по годам, кварталам, месяцам, дням, часам и минутам. Здесь мы построим диаграмму объема продаж товаров некоторого поставщика, сгруппировав данные по дням.
Сначала построим запрос, обеспечив данные для построения диаграммы. Запрос должен предоставлять следующую информацию: имя поставщика (таблица Поставщик), дату и объем продаж (таблица Продажи), наименование и розничную цену товара (таблица Товары). Эта информация даст нам возможность проанализировать темпы продаж товаров. Таким образом, в запрос следует включить таблицы Товары, Продажи и Поставщик. Отбирать будем данные только по продажам, т.е. не будем учитывать списание и возврат; тогда условие отбора записей будет иметь вид Прод_возвр = ‘Пр’. Для подсчета объема продаж добавим в запросе вычисляемое поле Сум: [Количество]*[Цена_розн]. Назовем этот запрос Продажи поставщика.
Продемонстрируем построение диаграммы при создании нового отчета Продажи для поставщика. В окне создания отчета выберем пункт Мастер диаграмм, и в качестве источника данных возьмем созданный ранее запрос Продажи поставщика. Ответив на вопросы мастера, получим требуемый отчет с диаграммой. Будем представлять на диаграмме данные для всех товаров, группируя их по наименованиям и по дате продажи. При больших объемах данных информацию на диаграмме можно группировать не по дням, а по более продолжительным интервалам времени (неделям, месяцам, годам).
Изображенное на рисунке расположение полей на шаблоне диаграммы было выбрано мастером диаграмм. Единственное числовое поле ([Сум]) помещено в область данных диаграммы, т.е. значения этого поля (просуммированные по наименованиям и датам продажи) и будут откладываться на диаграмме. По оси абсцисс откладывается дата продажи (по дням), а наименования товаров и соответствующие им обозначения приводятся в легенде диаграммы. Если предложенный мастером вариант вас не устраивает, его легко можно изменить простым перемещением полей при помощи протяжки мыши. Изменить порядок группировки или вид вычислений (скажем, не сумма, а максимальное значение) позволяет двойной щелчок по соответствующему полю на макете диаграммы.
По завершении работы с мастером в отчет помещается объект OLE, источником которого является приложение MS Graph, предназначенное для построения диаграмм в тех офисных приложениях фирмы Microsoft, которые не имеют своих средств построения диаграмм (например, в Excel). Поэтому для форматирования диаграммы в MS Graph, следует выполнить двойной щелчок на диаграмме в режиме конструктора отчета.
Для редактирования данных диаграммы следует выделить диаграмму в режиме конструктора отчета и воспользоваться Построителем для поля Источник строк в окне свойств.
Например, чтобы получить диаграмму для конкретного поставщика, можно в условиях отбора для поля Код_поставщика указать конкретный код (на рисунке выбрано значение 5 для кода поставщика) или же для поля ФИО_поставщика указать конкретную фамилию. Как видно, источник строк для диаграммы представляет собой некий запрос, который можно сохранить как объект базы данных, что нами и будет сделано.
Те, кто строил диаграммы в MS Excel, будут разочарованы, узнав, что здесь нет возможности вернуться к диалогу с мастером диаграмм для ранее построенной диаграммы. Однако в этом нет особой необходимости, поскольку у нас имеются средства, как для форматирования, так и для изменения данных для диаграммы. Если редактирование запроса, служащего источником строк для диаграммы, не приведет вас к успеху, создайте новый отчет.
Создание запроса средствами VBA
В предыдущем разделе мы построили отчет с диаграммой для графического представления данных по продажам для всех поставщиков фирмы. Аналогичным образом диаграмму можно построить для конкретного поставщика, вручную введя условия отбора в запросе, служащем источником строк диаграммы. В качестве источника данных для построения диаграммы использовался запрос Продажи поставщика, в условиях отбора которого указывался этот поставщик.
Теперь поставим следующую задачу. Пусть отчет с диаграммой печатается только для того поставщика, которого мы будем выбирать из списка на специально созданной для этого форме Продажи по поставщикам. Т.е. мы попробуем печатать отчеты для требуемых поставщиков (сотрудников, категорий товара и т.д.), выбирая их из списка, а не редактируя всякий раз условие отбора в запросе, лежащем в основе ранее построенной диаграммы.
Итак, создадим форму, содержащую кнопку и поле со списком. В списке будут находиться фамилии поставщиков (источник строк списка — таблица Поставщик), а при нажатии на кнопку будет выполняться команда печати отчета, содержащего диаграмму для выбранного в списке поставщика.
Эти действия нам уже знакомы. Единственная проблема, которую нужно в данном случае решить, это — каким образом данные из списка включать в условия отбора для запроса, служащего источником данных для построения диаграммы. Можно использовать запросы с параметрами (глава 9). Однако это постоянно будет вызывать появление окна для ввода значения параметра и, таким образом, использование списка окажется, по существу, ненужным. Кроме того, поскольку информацию можно выбрать из списка, хотелось бы избежать ее ввода с клавиатуры.
Поступим следующим образом. Будем создавать запрос, служащий источником строк для диаграммы, непосредственно в событийной процедуре нажатия кнопки на форме Выбор поставщика. При этом в условия отбора записей будем включать поставщика, выбранного в списке этой формы. Этот запрос должен формулироваться на языке SQL. Причем для решения нашей задачи досконального знания этого языка не требуется, поскольку в Access можно любой запрос, построенный в конструкторе, перевести на язык SQL с помощью команды Вид/Режим SQL. Предлагаемый алгоритм будет создавать запрос как объект базы данных, поэтому сначала сохраним запрос, служащий источником строк диаграммы (назовем его Запрос для диаграммы по поставщикам — смотри рисунок), а из запроса Продажи поставщика уберем условия отбора. В событийной процедуре нужно будет предусмотреть еще один момент, а именно: попытка создать запрос с именем уже имеющегося запроса будет вызывать сообщение об ошибке. Чтобы избежать этого, сначала будем удалять (в коде VBA) имеющийся запрос, а затем создавать новый с тем же именем. Наконец, будем печатать отчет с диаграммой.
Чтобы реализовать описанный выше алгоритм, выполним следующие действия.
1. Дадим имя выбор полю со списком на форме Продажи по поставщикам. 2. Скопируем запрос (источник строк) в виде оператора SQL в буфер обмена и сохраним его в базе данных под именем Запрос для диаграммы по поставщикам. Для этого: — В отчете, содержащем диаграмму (Диаграмма продаж), выделим диаграмму и в окне свойств на вкладке Данные нажмем кнопку построителя выражений в строке Источник строк. — Выберем команду Файл\Сохранить (даем имя Запрос для диаграммы по поставщикам).
— Теперь выполним команды Вид\Режим SQL и Правка\Копировать. (Совет: перед копированием целесообразно добавить в запрос условие отбора по полю Код_поставщика. Это упростит редактирование SQL-запроса). 3. Вставим в событийную процедуру нажатия кнопки на форме скопированный ранее SQL-запрос. Он будет выглядеть примерно так: TRANSFORM Sum([Продажи поставщика].Сум) AS Сумма SELECT [Продажи поставщика].Дата_продажи FROM [Продажи поставщика] WHERE ((([Продажи поставщика].Код_поставщика)=5)) GROUP BY [Продажи поставщика].Дата_продажи PIVOT [Продажи поставщика].Наименование; 4. Отредактируем событийную процедуру нажатия кнопки печати отчета в соответствии с предложенным алгоритмом (сравните окончательное выражение запроса с выражением из пункта 3): Dim запрос As QueryDef, nameQuery As String Dim stDocName As String nameQuery = «Запрос для диаграммы по поставщикам» ‘ Удаляем существующий запрос CurrentDb.QueryDefs.Delete nameQuery ‘ Создаем новый запрос с тем же именем Set запрос = CurrentDb.CreateQueryDef(nameQuery) ‘ Ниже отредактирован скопированный запрос для источника строк диаграммы. Обратите внимание на предложение WHERE — в условиях отбора используются данные из списка Выбор». Сравните выражение ‘запроса с выражением из пункта 3.
запрос.SQL «SELECT [Продажи поставщика].Дата_продажи » _ «FROM [Продажи поставщика] » _ «WHERE ((([Продажи поставщика].Код_поставщика) )) » _ «GROUP BY [Продажи поставщика].Дата_продажи » _ «PIVOT [Продажи поставщика].Наименование» stDocName Прием товаров», , , , acFormAdd
Константа acFormAdd в аргументе Режим данных макрокоманды OpenForm позволяет открыть форму в режиме добавления новых записей, при котором вся остальная информация не выводится на экран. С остальными аргументами этой макрокоманды можно ознакомиться по справке. Заметим, что использование диспетчера кнопочных форм избавит вас от написания событийной процедуры, поскольку соответствующую команду можно просто выбрать в диалоге с мастером. Также не потребует программирования использование макроса, при конструировании которого значения аргументов макрокоманды выбираются из списка, после чего этот макрос можно выбрать для обработки события нажатия соответствующей кнопки.
Если же нам потребуется поработать со списком товаров, то мы будем открывать эту же форму Прием товаров в режиме просмотра, при котором запрещено какое-либо изменение информации. Это, в частности, можно сделать в событийной процедуре с помощью строки
DoCmd.OpenForm «Прием товаров», , , , acFormReadOnly
Сводная таблица / сводная диаграмма
Сводная таблица (Pivot Table) и сводная диаграмма (Pivot Chart) дают возможность выполнять комплексный анализ данных (по аналогии с MS Excel).
Задание: необходимо проанализировать продажи по каждой категории
товаров.
1. Создайте запрос «Анализ_Продаж_Категорий», включив в него
следующие поля:

2. Выполните запрос, убедитесь в правильности его выполнения.
3. Перейдите на вкладку Создание (Create) и выберите тип формы Сводная
таблица (Pivot Table). Откроется рабочее окно, на котором необходимо
разместить поля из запроса.
4. Для отображения списка полей (Pivot Table Field List) запроса кликните
мышкой на пустом поле или выберите кнопку Список полей (Field List) в
группе Показать или скрыть (Show/Hide) на вкладке Конструктор
(Design).
5. Добавьте поля строк создаваемой сводной таблицы:
«НазваниеКатеогрии», «НаименованиеТовара»; поле «Количество»
добавьте в поле итогов для деталей.

Рис. 1. Окно размещения элементов сводной таблицы.
6. Сохраните форму (сводную таблицу) под именем
«Анализ_Продаж_Категорий».
7. Выделите поле «Количество» и на вкладке Конструктор (Design) в
группе Сервис (Tools) выберите Автовычисления – Сумма (Sum). Эта
функция позволит просматривать количество проданных единиц товаров
по каждой категории без указания подробностей.

Рис. 2. Группа Сервис.
8. В результате сводная таблица должна выглядеть следующим образом:

Рис. 3. Сводная таблица «Анализ_Продаж_Категорий»
9. На основании запроса «Анализ_Продаж_Категорий» необходимо создать
сводную диаграмму. Для этого на вкладке создание необходимо выбрать
кнопку Сводная диаграмма (Pivot Chart).
10. Для открытия окна Список полей данных (Pivot Chart Field List)
необходимо щелкнуть на пустом поле области диаграммы или нажать
кнопку Список полей (Field List) в группе Показать или скрыть
(Show/Hide) на вкладке Конструктор (Design).
11. В область поля категории перетащите поле «НазваниеКатегории», в
область полей данных – «Количество». Откорректируйте внешний вид
диаграммы, измените тип по Вашему усмотрению.

12. Сохраните форму (диаграмму) под именем
«Анализ_Продаж_Диаграмма».
Как создать диаграмму в access
Пошаговое создание диаграмм в базе данных Access
Обубликовано: 13.11.2018
Всем привет! В этом уроке разберем пошаговое создание диаграмм в базе данных Access. От вас потребуется только читать и повторять. Поехали!
Рассмотрим создание круговых диаграмм в программе Microsoft Access. Круговая диаграмма – способ графического представления количественных данных. Это просто круг, который поделен на секторы. Размер каждого сектора пропорционален численным значениям, другими словами, чем больше числовое значение, тем больше размер сектора и наоборот. Часто на такой диаграмме отображаются процентные показатели частей по отношению к общему значению.

Здесь будет показано создание диаграммы в базе данных, которая создана в рамках обучающих роликов «MS Access для начинающих». Если интересно, все уроки смотрим тут.
Пример круговой диаграммы — Пошаговое создание диаграмм в базе данных Access

1. Запустим программу Microsoft Access (Пуск — Программы — Microsoft Office — Microsoft Access), откроем созданную ранее базу данных.
2. Источником данных любой диаграммы в Access является таблица или запрос. Нас интересует запрос «Расчет суммы товара».
Запрос «Расчет суммы товара» — Пошаговое создание диаграмм в базе данных Access

3. Переходим на вкладку «Создание» — «конструктор отчетов». На панели инструментов находим пункт «Диаграмма» и располагаем на форме.
Конструктор отчетов — Пошаговое создание диаграмм в базе данных Access





4. Дважды кликаем по диаграмме, открывается интерфейс редактирования диаграмм.
5. В круговой диаграмме 5 областей. И каждую область мы можем редактировать по своему усмотрению.
6. Первая область — заголовок диаграммы. Отформатируем заголовок диаграммы –поставим 18 шрифт. Поменять внешний вид можно на панели инструментов либо щелкнуть по элементу правой кнопкой мыши.
7. Вторая область — легенда. Легенда — пояснения диаграммы, по умолчанию располагается справа от самой диаграммы. Также меняем формат по своему усмотрению. Если хотим переместить, то это легко сделать мышкой, просто перемещаем в то место на экране, где хотим расположить легенду.
Вероятно, вы обратили внимание, что сейчас на диаграмме отображаются шаблонные данные: «Восток», «Запад», «Север». Как сделать так, чтобы отображались наши данные? Увеличиваем размер области диаграммы, закрываем конструктор отчетов, сохраняем отчет.
Если с первого раза, данные запроса не отобразились в режиме конструктора, попробуйте повторить предыдущий шаг еще раз.
8. Третья область — Область диаграммы. поменяем фон, вкладка «Вид» — кнопка «Способы заливки». Выбирайте цвет, текстуру, узор или рисунок по вкусу. 

9. Чтобы изменить тип и внешний вид самой диаграммы щелкаем по области диаграммы правой кнопкой мыши, пункт «Тип диаграммы». Т.к сегодня разбираем круговую диаграмму, тип не меняем. Справа можно изменить вид, ниже кнопка просмотра результата. Если не нравится стандартные варианты представления диаграммы, можно рассмотреть нестандартные. Выберем вариант объемной кругой диаграммы и закрываем окно.
10. Если вы выбрали трехмерную диаграмму, станет доступным формат трехмерной проекции (пункт «Объемный вид»). Здесь можно настроить такие параметры как «ВОЗВЫШЕНИЕ» и «ПОВОРОТ». 


10. Разбираем параметры диаграммы. Правая кнопка мыши — «Параметры диаграммы».
Заголовки. Здесь можно задать название диаграммы, а также название осей. Так как в круговой диаграмме осей нет, эти поля не активны.
Легенда. Размещение легенды мы уже разобрали, если хотите ее выключить, убираем флажок.
Подписи данных. Если выставим флаг «Имена рядов» — отобразится Сумма_Кол-во товаров, т.е название столбца таблицы данных. Эту надпись мы поменяем далее.
Если мы хотим вывести название товара, то ставим флаг «Имена категорий». Согласитесь, очень удобно, что в окне предварительного просмотра можно посмотреть все внесенные изменения.
Флажок «Значение» отображает непосредственно данные запроса или таблицы. В нашем случае, запроса «Расчет суммы товара».
«Доли» — отображает процентные показатели частей по отношению к общему значению.
Если у вас несколько подписей, в данном списке можно выбрать разделитель, также можно задать свой собственный.
Если легенда выключена, то можно поставить флаг «Ключ легенды», обозначение цвета отобразится рядом с надписью.
Чтобы изменить надпись «Сумма_кол-во товара» закрываем окно «параметры диаграммы». Под диаграммой находится таблицы данных, вместо «Сумма_кол-во товара» «пишем продано, шт:».
11. Четвертая область — область построения диаграмм. Здесь можно увеличить или уменьшить размер диаграммы, не увеличивая области диаграммы, поменять цвет фона области построения диаграмм.
12. Пятая область — Ряд. Здесь происходит настройка секторов диаграммы. Смотрим вкладки. Все измененные параметры параметры в окне «Формат ряда данных» применяется ко всем секторам круговой диаграммы. Здесь почти все по аналогии с пунктом 10 (параметры диаграммы).
13. Если мы хотим отдельно отформатировать и настроить каждый сектор. Щелкаем по любому сектору — (ПКМ) формат точки данных. 


14. Последняя шестая область — подписи данных. Переходим в формат подписей данных (ПКМ). Уменьшаем шрифт.
Если необходимо числовое значение сектора расположить внутри самого сектора, переходим на вкладку «Выравнивание» — Пункт «Положение подписи»: «У вершины внутри.»
15. Уберем надпись «Продано, шт». ПКМ по области диаграммы — Параметры диаграммы. Вкладка «Подписи данных». Убираем флажки «Имена рядов», «Значения». Выставляем «Доли». 
16. Если хотим поменять отдельную подпись в каком-то определенном секторе, выделяем нужную подпись — формат, далее выставляем настройки по вкусу.
17. В режиме предварительного просмотра можем посмотреть, как будет выглядеть диаграмма при печати.
В этом уроке на простом примере было показано Пошаговое создание диаграмм в базе данных Access.
Рисунки и диаграммы Access

В данной лабораторной работе рассмотрим использование рисунков и диаграмм в СУБД Access.
Рисунки
В режиме конструктора форм СУБД Access имеется возможность использования графических элементов Линия и Прямоугольник. Данные элементы позволяют акцентировать внимание на определенных частях формы.
В режиме конструктора имеется возможность вставки рисунков двумя способами: Свободная рамка объекта и Присоединенная рамка объекта. Используя первый способ, можно вставить рисунок, который будет одинаково отображаться для всех записей. Это может быть, например, логотип компании. При помощи второго способа размещают рисунки, которые связаны с конкретными записями, например, база данных содержит информацию по сотрудникам и этот элемент позволяет выводить фотографию конкретного сотрудника при изменении записей.
Задание
- Поместите окно ввода в форме “Заказ с полем со списком” на выпуклый прямоугольник. Для этого выберите инструмент Прямоугольник и разместите его на необходимую область формы. При этом прямоугольник может перекрыть элементы формы. Далее сделайте прямоугольник прозрачным, выбрав Свойства — Тип фона — Прозрачный или выбрать пункт На задний план в пункте меню Формат. Затем выберите СвойствоОформление / Приподнятое. Отмечу также, что прямоугольник залить цветом, используя Свойство /Цвет фона.
- Добавьте логотип на одну из форм. Логотип создайте самостоятельно, например, в графическом редакторе Paint.
Мастер диаграмм
Удобным механизмом анализа и представления данных являются диаграммы. Распишу процесс построения диаграммы распределения по категориям цены товаров для таблицы ТОВАР.
- Создаем запрос “Категории и цены товаров” по таблицам ТОВАР и КАТЕГОРИЯ ТОВАРА, содержащий поля Значение и Цена, отсортированные по полю Значение.
- Используя созданный запрос, создаем форму “Диаграмма: Количество товаров по категориям”. Для этого на Ленте Создание в разделе Формы выберем Пустая форма и откроем ее в конструкторе, затем в Элементах управления найдем пиктограмму Вставить диаграмму нажмем на нее и выберем место на форме куда хотим ее вставить и автоматически откроется окно Создание диаграммы, выберем таблицу и запрос. В нашем случае это будет запрос Категории и цены товаров. Выберем поле Значение. В качестве формы диаграммы выберем Объемнаякруговая. Теперь введем заголовок диаграммы: Число товаров каждой категории и кнопкой Готово запустим построение диаграммы. Получим требуемую диаграмму.
- На полученной диаграмме есть названия категорий, но нет численных значений. Вызовем программу Microsoft Graph, которая собственно и создала нашу диаграмму. Для этого необходимо перейти в режим Конструктора и вызвать программу двойным щелчком по светлому полю на диаграмме. В верхней строке меню теперь представлены пункты меню приложения Microsoft Graph. Выберем пункты Диаграмма / Параметры диаграммы… / Подписи данных / Значение. Нажмем кнопку ОК. Теперь цифры числа записей данной категории появятся. При необходимости их можно переместить в нужные места. Если хотим, можем вывести проценты.
Задание
- Создайте диаграмму Количество товаров по категориям (создание описано выше).
- Для того же запроса “Категории и цены товаров” создайте столбчатую диаграмму значений средней цены товаров по категориям. В качестве полей диаграммы возьмем оба поля запроса. Выберем тип диаграммы Гистограмма. Далее в процессе диалога с мастером дважды щелкнем левой кнопкой мыши по кнопке Сумма_Цена. Откроется окно выбора функции, выберем Avg. Название кнопки теперь поменяется на Среднее_Цена Дадим диаграмме название Средняя цена товаров по категориям.
- Создать для этого же запроса вертикальную столбцовую диаграмму (Гистограмму) “Число товаров”, показывающую количество товаров по категориям.
- Замените на предыдущей круговой диаграмме вывод чисел на вывод процентов.
- Создайте круговую диаграмму “Категория покупателей – количество товаров”, показывающую количество товаров, приобретенных каждым покупателем.