Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лаб.раб.12, 13, 14(лит-ра.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
628 Кб
Скачать
☆

Работа с диаграммами ms Excel

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

Диаграммы MS Excel могут отображаться как на отдельных листах, так и внедряться в обычные рабочие листы (Worksheet). В первом случае все диаграммы рабочей книги содержатся в коллекции Charts объекта Workbook. Во втором случае диаграммы, внедренные в рабочий лист, содержатся в коллекции ChartObjects объекта Worksheet.

В Delphi для работы с диаграммами Excel имеется специальный компонент TExcel Chart. Поскольку элементы коллекций Charts и ChartObjects представлены указателями на интерфейс IDispatch объекта Chart, то при работе с диаграммами из приложения, разработанного в Delphi с помощью компонента TExcelChart, следует использовать метод ConnectTo этого компонента.

Работа с коллекцией Charts практически полностью аналогична работе с коллекцией Worksheets.

Наиболее интересными свойствами объекта Charts (TExcelChart) являются те, которые управляют внешним видом диаграммы:

  • Legend: Legend представляет собой ссылку на объект Legend, который определяет параметры «легенды» диаграммы;

  • ChartTitle: ChartTitlе является ссылкой на объект ChartTitlе, представляющий заголовок диаграммы;

  • ChartType: TOleEnum определяет тип диаграммы. Константы, с помощью которых задается это свойство, для создания основных типов диаграмм приведены в таблице 6;

  • HasAxis[indexl:OleVariant; index2:OleVariant: Icid: integer] определяет тип осей, присутствующих на диаграмме. Параметр indexl определяет тип осей и может принимать одно из следующих значении: xlCategory — ось категорий; xlValue — ось значений; xlSeriesAxis — ось рядов данных. Последнее значение имеет смысл только для трехмерных диаграмм. Параметр index2 определяет группу осей и может принимать одно из двух значений: xlPrimary или xlSecondary. Имеет смысл только для двумерных диаграмм;

  • HasDataTable: WordBool определяет наличие (true) или отсутствие (false) таблицы данных на диаграмме;

  • HasLegend[Icid: integer]: WordBool задает наличие (true) или отсутствие (false)

  • «легенды» на диаграмме;

  • HasTitle[Icid: integer]: WordBool определяет наличие (true) или отсутствие (false) заголовка и осей диаграммы.

Из всех методов объекта Chart мы рассмотрим только один — ChartWizard, который выполняет построение диаграммы с заданными параметрами. В наиболее полном виде синтаксис этого метода выглядит следующим образом:

procedure ChartWizard(Source, Gallery, Format, PlotBy, CategoryLabels, SeriesLabels, HasLegend, Title, CategoryTitle, ValueTitle, ExtraTitle: OleVariant)

Все параметры данного метода являются необязательными. Их смысловые значения приведены ниже

Source – Диапазон ячеек, содержимое которых является источником данных для создаваемой диаграммы. В случае отсутствия данного параметра в качестве диаграммы используется активный лист диаграммы или выделенная диаграмма на активном рабочем листе

Gallery – Тип диаграммы. Значение этого аргумента может задаваться одной из следующих констант: xIArea, xlBar, xlColumn, xlLine, xIPie, xIRadar, xlXYScatter, xlCombination, xl3DArea, xl3DBar, xl3DColumn, xl3DLine, xl3DPie, xl3DSurface, xlDoughnut или xlDefaultAutoFormat

Format – Автоформат, используемый при создании диаграммы (вид диаграммы). В зависимости от типа диаграммы значение данного параметра лежит в диапазоне от 1 до 10. Используемое по умолчанию значение зависит от типа диаграммы и источника данных.

PlotBy – Место расположения данных для рядов данных: в строках или столбцах. Задается с помощью констант xIRows и xlColumns

CategoryLabels – Число строк или столбцов источника данных, которые содержат подписи категорий. Допустимые значения данного параметра лежат в диапазоне от 0 до значения, равного максимальному количеству категорий или рядов минус единица

SeriesLabels – Целое число, определяющее количество строк или столбцов источника данных, которые содержат подписи рядов. Допустимые значения данного параметра лежат в диапазоне от 0 до значения, равного максимальному количеству категорий или рядов минус единица

HasLegend – Определяет, отображать (true) или нет (false) «легенду»

Title – Текст заголовка диаграммы

CategoryTitle – Текст заголовка оси категорий

ValueTitle – Текст заголовка оси значений

ExtraTitle – Текст заголовка оси рядов данных для трехмерных диаграмм или текст заголовка второй оси значений для двумерных диаграмм

Алгоритм выполнения задания