Мельница данных- Разработка отчетов  (раздел целиком)  (12.12.2025)
Разработка отчетов

1. Создание шаблонов PDF-отчетов

1.1. Описание

Portable Document Format (PDF) — кроссплатформенный формат электронных документов, созданный фирмой Adobe Systems с использованием ряда возможностей языка PostScript. В первую очередь предназначен для представления в электронном виде полиграфической продукции, — значительное количество современного профессионального печатного оборудования может обрабатывать PDF непосредственно. Для просмотра можно использовать официальную бесплатную программу Adobe Reader, а также программы сторонних разработчиков. Традиционным способом создания PDF-документов является виртуальный принтер, то есть документ как таковой готовится в своей специализированной программе — графической программе или текстовом редакторе, САПР и т. д., а затем экспортируется в формат PDF для распространения в электронном виде, передачи в типографию и т. п. Формат PDF позволяет внедрять необходимые шрифты (построчный текст), векторные и растровые изображения, формы и мультимедиа-вставки. Поддерживает RGB, CMYK, Grayscale, Lab, Duotone, Bitmap, несколько типов сжатия растровой информации. Имеет собственные технические форматы для полиграфии: PDF/X-1, PDF/X-3. Включает механизм электронных подписей для защиты и проверки подлинности документов. В этом формате распространяется большое количество сопутствующей документации. Чаще всего PDF-файл является комбинацией текста с растровой и векторной графикой, реже — текста с формами, JavaScript'ом, 3D-графикой и другими типами элементов.

В приложениях Платформы "Мельница данных" для создания PDF-документов используется собственная библиотека PDFCreator.dll. С помощью библиотеки возможно прямое создание документов версии 1.3 . Создание PDF-документов осуществляется путем ввода предопределенных в библиотеке команд, которые в дальнейшем интерпретируются на основе языка описания страниц POSTSCRIPT.

Важно!
Все размеры графических объектов, размеры страниц, шрифтов и т.п. по умолчанию заданы в миллиметрах.
Совет
Для удобства построения шаблона PDF-документа создана функция DrawGrid. При ее включении при отладке при создании шаблона будет отображена визуальная сетка с шагом 5 миллиметров.
C гридом

1.2. Методы

1.2.1. Свойства документа

Для создания и описания свойств PDF-документа в библиотеке PDFCreator.dll используется класс IPDFDocument, обладающий следующими свойствами:

  • Title (WideString) - заголовок документа. По умолчанию - пустая строка.
    Пример
    Title = "DOC1"
  • CanEmbedFonts (WordBool) - Признак возможности построения PDF- документа со встроенными шрифтами (Embedded Fonts). В случае включения признака, все объявленные в скрипте шрифты будут включены в сборку документа и будут передаваться целиком вместе с документом. По умолчанию - False.
    Пример
    1CanEmbedFonts = True
    2CanEmbedFonts = False
  • CanCompress (WordBool) - признак сжатия документа при создании по собственным алгоритмам. По умолчанию - True.
    Пример
    1CanCompress = False
    2CanCompress = True
  • Author (WideString) - автор документа. По умолчанию - текущий пользователь ОС.
  • Subject (WideString) - описание документа. По умолчанию - пустая строка.
  • Keywords (WideString) - ключевые слова для поиска по документу. По умолчанию - пустая строка.
  • Creator (WideString) - приложение-родитель документа. Указывается в том случае, если документ был сконвертирован из другого формата.
  • PageCount (Integer) - свойство, содержащее общее количество страниц в документе.
  • Pages[Index: Integer]: IPDFPage - свойство документа, предназначенное для перебора страниц документа для совершения над ними однотипных действий.
    Пример

    Пример использования:

    1for I = 0 to PageCount - 1
    2  Pages(I).rectangle 10,10,10,10, false
    3next
    4Save "c:\pdf.pdf"

    Результат: На всех страницах документа будут нарисованы квадраты 10х10 мм.
  • procedure Save(Target: OleVariant) - процедура для сохранения документа PDF на жесткий диск сразу после создания.
    Пример
    Save "c:\pdf.pdf"
    - сохранит документ в файл c:\pdf.pdf


1.2.2. Свойства страницы

Для создания страницы используется функция

function CreatePage(Parent: OleVariant): IPDFPage;

Параметр Parent указывает страницу-родителя для данной страницы. Если страницы- родителя быть не должно - формат вызова функции примет вид:

set page = CreatePage(Null)

Параметры страницы:

  • Title - заголовок страницы.
    Пример
    page.Title = "Page name"
  • Width - ширина страницы, миллиметры
    Пример
    page.Width = 80
  • Height - высота страницы, миллиметры
    Пример
    page.Height = 80
  • DrawGrid - процедура, выводящая на страницу сетку с шагом 5 миллиметров для удобства отладки вида документа.
  • Perform - процедура, позволяющая выполнить дополнительные команды PostScript на странице.
    Пример
    1page.perform "1 0.7 0 0 k"
    2page.perform "0 0 m"

1.2.2.1. Объявление цвета

Для объявления цвета объектов на странице используется цветовая модель R:G:B (Red:Green:Blue). Объявление цвета для выполнения последующих операций (цвет шрифта, цвет линии/фигуры) осуществляется процедурой

procedure SetColor(R: Integer; G: Integer; B: Integer);
Где параметры R, G, B - значения базисных цветов для выбранного цвета (от 0 до 255).

Пример
ЦветRGB
Белый 255 255 255 +++
Черный 0 0 0 +++
Серый 190 190 190 +++
Синий 0 0 255 +++
Красный 255 0 0 +++
Зеленый 0 255 0 +++
Важно!

Если предварительно цвет не был объявлен, используется цвет по умолчанию - черный (0,0,0)


1.2.3. Графика

1.2.3.1. Линии

Для отрисовки линий используется процедура

procedure Line(X1: Double; Y1: Double; X2: Double; Y2: Double);
Здесь:

  • X1 - координата начала линии по горизонтали в миллиметрах от верхнего левого угла листа.
  • Y1 - координата начала линии по вертикали в миллиметрах от верхнего левого угла листа.
  • X2 - координата конца линии по горизонтали в миллиметрах от верхнего левого угла листа.
  • Y2 - координата Конца линии по вертикали в миллиметрах от верхнего левого угла листа.

Для задания толщины линии используется свойство

property LineWidth: Double
Значение толщины задается в миллиметрах. Значение по умолчанию - минимально возможная единица рисования для устройства. Так для монитора - 1 pixel, для принтера - 1 dot (точка)

Для задания стиля отрисовки начала/окончания линии используется свойство property LineCap: TPDFLineCap
Возможные стили:
Значение свойства: Отображение: Описание:
0Линия 0Прямой срез точно по точкам начала и окончания линии (по умолчанию)
1Линия 1С закруглением
2Линия 2Прямой срез с продолжением линии на половину толщины линии

Объявление цвета линии.

Пример
Две линии разной толщины, с разными окончаниями и цветами:
01set page = CreatePage(Null)
02
03page.DrawGrid
04
05page.LineCap = 1
06
07page.LineWidth = 2
08
09page.Line 10, 10, 30, 30
10
11page.LineWidth = 4
12
13page.SetColor 255, 0, 0
14
15page.LineCap = 2
16
17page.Line 10, 30, 30, 10."I


Результат:
2 линии

При необходимости соединения линий под углом в определенной точке можно задать тип соединения. Для объявления типа соединения используется свойство property LineJoin: TPDFLineJoin;
Типы соединения двух линий:
Значение свойстваОтображениеОписание
02 линии 0С острым углом
12 линии 1С закруглением
22 линии 2С обрезанным углом

Пунктир

Для создания пунктира используется процедура отображения линии с предварительно объявленными дополнительными значениями.

Процедура procedure SetDash(DashArray: OleVariant; Phase: Integer); Здесь DashArray - массив значений в миллиметрах, указывающий последовательность чередования штрихов и пропусков на линии, Phase - смещение в миллиметрах по линии.

Пример
Пример 1. Штрих 10 мм, Промежуток 5 мм, Смещения нет
Пример 2. Штрих 10 мм, Промежуток 5 мм, Смещение 5 мм
Пример 3. Различные значения штрихов и промежутков, Смещения нет
01set page = CreatePage(Null)
02
03page.DrawGrid
04
05page.LineWidth = 3
06
07page.SetDash Array(10, 5), 0
08
09page.Line 10, 10, 100, 10
10
11page.SetDash Array(10, 5), 5
12
13page.Line 10, 20, 100, 20
14
15page.SetDash Array(10, 5, 3, 2, 12, 20), 0
16
17page.Line 10, 30, 100, 30

Результат:
Пунктир 1

Ломанная линия - здесь непрерывная линия, состоящая из нескольких прямых. Для отображения ломанной используется процедура procedure Poly(Points: OleVariant; Fill: WordBool), где Points - массив координат точек соединяемых прямыми, а Fill - признак заливки полученной замкнутой фигуры (если замкнута).

Пример
Пример Звезда без заливки
1set page = CreatePage(Null)
2
3page.DrawGrid
4
5page.LineWidth = 3
6
7page.Poly  Array(10, 45, 100, 45, 27, 103, 55, 10, 82, 103, 10, 45), false

Результат:
Звезда
Пример
Пример Звезда с заливкой
1set page = CreatePage(Null)
2
3page.DrawGrid
4
5page.LineWidth = 3
6
7page.Poly  Array(10, 45, 100, 45, 27, 103, 55, 10, 82, 103, 10, 45), true

Результат:
Звезда заливка

1.2.3.2. Прямоугольник

Rectangle (Прямоугольник) - для создания используется процедура:

procedure Rectangle(X1: Double; Y1: Double; Width: Double; Height: Double; Fill: WordBool);
Здесь:

  • X1 - координата верхнего левого угла прямоугольника по горизонтали в миллиметрах от верхнего левого угла листа шаблона.
  • Y1 - координата верхнего левого угла прямоугольника по вертикали в миллиметрах от верхнего левого угла листа шаблона.
  • Width - ширина прямоугольника с миллиметрах.
  • Height - высота прямоугольника с миллиметрах.
  • Fill - признак заливки прямоугольника (True/False). Если значение True то заливка производится объявленным заранее цветом (см. Объявление цвета). Если False - заливка не производится. Прямоугольник отрисовывается линиями с предварительно заданной толщиной. См. Линии
Пример
Пример 1. Создание красного прямоугольника:
1set page = CreatePage(Null)
2
3page.SetColor 255, 0, 0
4
5page.Rectangle 10, 15, 40, 20, True
6
7page.DrawGrid
Результат:
Прямоугольник
Пример 2. Пустой прямоугольник без задания цвета:
1set page = CreatePage(Null)
2
3page.DrawGrid
4
5page.Rectangle 12, 17, 42, 25, false
6
7page.DrawGrid

Результат:
Прямоугольник false

Также существует возможность изменения стиля отображения углов прямоугольника. Для этого нужно использовать свойство property LineJoin: TPDFLineJoin;

Значение свойстваОтображениеОписание
02 линии 0С острым углом
12 линии 1С закруглением
22 линии 2С обрезанным углом

Пример построения прямоугольников с различными типами соединения сторон:

Пример
01set page = CreatePage(Null)
02
03page.DrawGrid
04
05page.LineWidth = 4
06
07page.LineJoin = 0
08
09page.Rectangle 10, 10, 20, 10, false
10
11page.LineJoin = 1
12
13page.Rectangle 40, 10, 20, 10, false
14
15page.LineJoin = 2
16
17page.Rectangle 70, 10, 20, 10, false


Результат:
3 прямоугольника

1.2.3.3. Вставка готовых изображений

Для вставки на создаваемую страницу готового изображения используется процедура procedure Image(const FileName: WideString; X: Double; Y: Double; Width: Double; Height: Double)

Параметры:

  • const FileName - имя файла изображения и путь к нему на жестком диске. Задается в кавычках.
  • X - координата левой верхней точки изображения по отношению к верхнему левому углу страницы по горизонтали в миллиметрах
  • Y - координата левой верхней точки изображения по отношению к верхнему левому углу страницы по вертикали в миллиметрах
  • Width - ширина изображения в миллиметрах
  • Height - высота изображения в миллиметрах.
Пример
1set page = CreatePage(Null)
2page.drawgrid
3page.Image "c:\mill.bmp", 10,10, 30, 30

Результат:
Картинка

Вне зависимости от размера исходного изображения, при вставке изображения на создаваемую страницу оно будет растянуто по размерам, прописанным в процедуре.


1.2.3.4. Векторная графика

Язык PostScript, с помощью которого создаются векторные изображения для PDF-документа, поддерживает создание типичных примитивных объектов, таких как:

  • Прямые и ломанные линии
  • Многоугольники
  • Окружности и эллипсы
  • Кривые Безье
  • Текст

При создании векторного изображения на странице PDF-документа в приложениях Платформы, команды построения примитивных объектов PostScript передаются на исполнение при помощи процедуры Perform. Подробнее об операторах и командах PostScript для создания PDF-документов можно узнать на сайте Adobe


1.2.4. Шрифты

Шрифты, которые должны использоваться в создаваемом документе, должны быть предварительно объявлены. Для объявления используемых шрифтов используется функция
function CreateFont(const FontName: WideString; Size: Double; Bold: WordBool; Italic: WordBool): IPDFFont; где:

  • const FontName - имя шрифта, аналогичное имени объявляемого шрифта в операционной системе. В Функции объявляется в кавычках.
  • Size - размер шрифта в пунктах
  • Bold - признак начертания шрифта "жирный". Значения - True или False
  • Italic - признак начертания шрифта "курсив". Значения - True или False
Пример
Примеры объявления шрифтов:
1set font = page.createFont("Arial", 20, False, False)
2set labelFont = page.createFont("Times New Roman", 16, False, True)
3set dataFont = page.createFont("Tahoma", 18, True, False)

Для вывода текстовой информации на страницу используются процедуры:

  • procedure WriteLine(const LineText: WideString; X: Double; Y: Double);
    - используется для вывода текстовой строки
  • function WriteText(const AText: WideString; X: Double; Y: Double; Width: Double; Alignment: TPDFTextAlignment): Double;
    - используется для вывода текстового блока.

Параметры для procedure WriteLine :

  • const LineText - текстовая строка для вывода. Прописывается в кавычках. Будет выведена на страницу одной строкой.
  • X - координата верхней левой точки текстовой строки по горизонтали в миллиметрах.
  • Y - координата верхней левой точки текстовой строки по вертикали в миллиметрах.
Пример
Примеры вывода текстов на страницу:
01set page = CreatePage(Null)
02page.DrawGrid
03set font = page.createFont("Arial", 20, False, False)
04set labelFont = page.createFont("Times New Roman", 16, False, True)
05set dataFont = page.createFont("Tahoma", 18, True, False)
06Font.WriteLine "Фамилия", 5, 2
07Font.WriteLine "Имя", 5, 10
08Font.WriteLine "Отчество", 5, 18
09labelFont.WriteLine "Дата рождения", 5, 26
10dataFont.WriteLine "Национальность", 5, 34

Результат:
Разные шрифты

Параметры для function WriteText :

  • const AText - текст для вывода на страницу. Прописывается в кавычках. Будет выведена на страницу в виде текстового блока.
  • X - координата верхней левой точки текстового блока по горизонтали в миллиметрах.
  • Y - координата верхней левой точки текстового блока по вертикали в миллиметрах.
  • Width - ширина текстового блока в миллиметрах
  • Alignment - тип выравнивания текста в текстовом блоке.
    Значение параметраТип выравнивания
    0 По левому краю
    1 По правому краю
    2 По центру
    3 Выравнивание по ширине
Пример
Примеры вывода текстовых блоков на страницу:
1set page = CreatePage(Null)
2page.DrawGrid
3set font = page.createFont("Arial", 14, False, False)
4set labelFont = page.createFont("Times New Roman", 12, False, True)
5set dataFont = page.createFont("Tahoma", 11, True, False)
6Q = font.WriteText ("Тест работы свойства для выравнивания текста в текстовом блоке для документа PDF, создаваемого на Платформе Мельница Данных", 5, 5, 100, 0)
7Q = labelFont.WriteText ("Тест работы свойства для выравнивания текста в текстовом блоке для документа PDF, создаваемого на Платформе Мельница Данных", 5, 35, 100, 1)
8Q = dataFont.WriteText ("Тест работы свойства для выравнивания текста в текстовом блоке для документа PDF, создаваемого на Платформе Мельница Данных", 5, 55, 100, 2)
9Q = dataFont.WriteText ("Тест работы свойства для выравнивания текста в текстовом блоке для документа PDF, создаваемого на Платформе Мельница Данных", 5, 80, 100, 3)

Результат:
Выравнивание

Свойства шрифтов:

property Spacing: Double; - свойство, отвечающее за величину промежутка между буквами в слове. Задается в виде отклонения от промежутка между буквами по умолчанию для выбранного шрифта по горизонтальной оси в миллиметрах. Значение свойства равное "0" соответствует значению по умолчанию.

Пример
Пример:
01set page = CreatePage(Null)
02page.DrawGrid
03set font = page.createFont("Arial", 14, False, False)
04set labelFont = page.createFont("Arial", 14, False, False)
05set dataFont = page.createFont("Arial", 14, False, False)
06font.Spacing = 0
07labelFont.Spacing = 1
08dataFont.Spacing = 2
09font.WriteLine "Промежуток по умолчанию (0)", 5, 5
10labelFont.WriteLine "Промежуток с отклонением (1 мм)", 5, 10
11dataFont.WriteLine "Промежуток с отклонением (2 мм)", 5, 15

Результат:
Промежуток букв

property WordSpacing: Double; - свойство, отвечающее за величину промежутка между соседними словами. Задается в виде отклонения от промежутка между словами по умолчанию для выбранного шрифта по горизонтальной оси в миллиметрах. Значение свойства равное "0" соответствует значению по умолчанию.

Пример
Пример:
01set page = CreatePage(Null)
02page.DrawGrid
03set font = page.createFont("Arial", 14, False, False)
04set labelFont = page.createFont("Arial", 14, False, False)
05set dataFont = page.createFont("Arial", 14, False, False)
06font.WordSpacing = 0
07labelFont.WordSpacing = 2
08dataFont.WordSpacing = 5
09font.WriteLine "Промежуток по умолчанию (0)", 5, 5
10labelFont.WriteLine "Промежуток с отклонением (2 мм)", 5, 10
11dataFont.WriteLine "Промежуток с отклонением (5 мм)", 5, 15

Результат:
Промежуток слов

property Scaling: Double; - свойство, отвечающее за горизонтальное масштабирование букв используемого шрифта. Устанавливается в процентах. Горизонтальный масштаб по умолчанию - 100%.

Пример
Пример:
01set page = CreatePage(Null)
02page.DrawGrid
03set font = page.createFont("Arial", 14, False, False)
04set labelFont = page.createFont("Arial", 14, False, False)
05set dataFont = page.createFont("Arial", 14, False, False)
06font.Scaling = 50
07labelFont.Scaling = 100
08dataFont.Scaling = 200
09font.WriteLine "Сжатие (50)", 5, 5
10labelFont.WriteLine "По умолчанию (100)", 5, 10
11dataFont.WriteLine "Растягивание (150)", 5, 15

Результат:
Scaling

property RenderingMode: TPDFFontRenderingMode; - свойство, отвечающее за заливку букв используемого шрифта.
Типы заливки:
Значение параметра:Отображение:Описание:
0 Font Fill Сплошная заливка (по умолчанию). Буква заливается сплошным цветом,
объявленным на данный момент.
1 Font Stroke Только граница. Прорисовывается граница буквы. Тело остается незалитым.
2 Font FillStroke Сначала заливка, потом граница. Граница прорисовывается всегда черным цветом.
Заливка осуществляется сплошным цветом, объявленным на данный момент.
3 Inv Невидимый шрифт.

Пример
Пример:
01set page = CreatePage(Null)
02set font = page.createFont("Arial", 20, False, False)
03set labelFont = page.createFont("Arial", 20, False, False)
04set dataFont = page.createFont("Arial", 20, False, False)
05font.RenderingMode = 0
06labelFont.RenderingMode = 1
07dataFont.RenderingMode = 2
08page.setColor 255, 0, 0
09Q = font.WriteText ("Олимпиада", 5, 5, 50, 0)
10Q = labelFont.WriteText ("Олимпиада", 5, 15, 50, 0)
11Q = dataFont.WriteText ("Олимпиада", 5, 25, 50, 0)

Результат:
Заливка букв

property Rise: Double; - свойство, отвечающее за перемещение текста по вертикали.

Пример
01set page = CreatePage(Null)
02page.DrawGrid
03set font = page.createFont("Arial", 20, False, False)
04set labelFont = page.createFont("Arial", 7, False, False)
05set dataFont = page.createFont("Arial", 7, False, False)
06labelFont.rise = -17
07dataFont.rise = -2
08Q = font.WriteText ("Олимпиада", 5, 5, 50, 0)
09Q = labelFont.WriteText ("Олимпиада", 44, 5, 50, 0)
10Q = dataFont.WriteText ("Олимпиада", 44, 5, 50, 0)

Результат:
Rise

Для определения размеров текстовой строки используется процедура MeasureLine(const LineText: WideString; out Width: OleVariant; out Height: OleVariant);

Здесь:

  • LineText - исходный текст для размещения на странице
  • Width - возвращаемый параметр ширины текстового блока на странице
  • Height - возвращаемый параметр высоты текстового блока на странице
Пример
1S = "шифр"
2font.MeasureLine S, W, H
3Q = font.WriteText(S, 139, 244 + ((23 - H) / 2), 40, 2)


Здесь для текста "Шифр" замеряется ширина и высота получившегося текстового блока. Затем полученные данные используются для корректного размещения текста на странице.

Для определения высоты текстового блока используется функция MeasureText(const AText: WideString; Width: Double): Double; safecall;

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

Здесь:

  • AText - исходный текст для размещения на странице. Прописывается в кавычках.
  • Width - задаваемая ширина текстового блока на странице в милиметрах.
Пример
1S = "Текст для размещения на странице..."
2Q = font.MeasureText(S, 139)
Здесь для текста "Текст для размещения на странице..." замеряется высота получившегося текстового блока. Затем полученные данные могут использоваться для корректного размещения текста на странице.

1.3. Справочник по интерфейсам

1.3.1. Перечисление TPDFFontRenderingMode
1type
2  TPDFFontRenderingMode = (frmFillText, frmStrokeText, frmFillThenStrokeText, 
3    frmInvisible);

Или

1type
2  TPDFFontRenderingMode = TOleEnum;
3const
4  frmFillText = $00000000;
5  frmStrokeText = $00000001;
6  frmFillThenStrokeText = $00000002;
7  frmInvisible = $00000003;

Элементы перечисления:

Имя Значение Назначение
frmFillText 0

frmStrokeText 1

frmFillThenStrokeText 2

frmInvisible 3


1.3.2. Перечисление TPDFLineCap
1type
2  TPDFLineCap = (lcBuss, lcRound, lcProtecting);

Или

1type
2  TPDFLineCap = TOleEnum;
3const
4  lcBuss = $00000000;
5  lcRound = $00000001;
6  lcProtecting = $00000002;

Элементы перечисления:

Имя Значение Назначение
lcBuss 0

lcRound 1

lcProtecting 2


1.3.3. Перечисление TPDFLineJoin
1type
2  TPDFLineJoin = (ljMiter, ljRound, ljBevel);

Или

1type
2  TPDFLineJoin = TOleEnum;
3const
4  ljMiter = $00000000;
5  ljRound = $00000001;
6  ljBevel = $00000002;

Элементы перечисления:

Имя Значение Назначение
ljMiter 0

ljRound 1

ljBevel 2


1.3.4. Перечисление TPDFTextAlignment
1type
2  TPDFTextAlignment = (ptaLeft, ptaRight, ptaCenter, ptaJustified);

Или

1type
2  TPDFTextAlignment = TOleEnum;
3const
4  ptaLeft = $00000000;
5  ptaRight = $00000001;
6  ptaCenter = $00000002;
7  ptaJustified = $00000003;

Элементы перечисления:

Имя Значение Назначение
ptaLeft 0

ptaRight 1

ptaCenter 2

ptaJustified 3


1.3.5. Интерфейс IPDFDocument

Диаграмма

01type
02  IPDFDocument = interface(IDispatch)
03    ['{E57FFE9D-6B85-45E6-A5D0-9DD17950A666}']
04    procedure Save(Target: OleVariant); safecall;
05    function CreatePage(Parent: OleVariant): IPDFPage; safecall;
06    function Get_Title: WideString; safecall;
07    procedure Set_Title(Value: WideString); safecall;
08    function Get_CanEmbedFonts: WordBool; safecall;
09    procedure Set_CanEmbedFonts(Value: WordBool); safecall;
10    function Get_CanCompress: WordBool; safecall;
11    procedure Set_CanCompress(Value: WordBool); safecall;
12    function Get_Author: WideString; safecall;
13    procedure Set_Author(Value: WideString); safecall;
14    function Get_Subject: WideString; safecall;
15    procedure Set_Subject(Value: WideString); safecall;
16    function Get_Keywords: WideString; safecall;
17    procedure Set_Keywords(Value: WideString); safecall;
18    function Get_Creator: WideString; safecall;
19    procedure Set_Creator(Value: WideString); safecall;
20    function Get_Pages(Index: Integer): IPDFPage; safecall;
21    function Get_PageCount: Integer; safecall;
22    procedure Close; safecall;
23    procedure Serialize(const Stream: IUnknown); safecall;
24    function Get_MinCompressSize: Integer; safecall;
25    procedure Set_MinCompressSize(Value: Integer); safecall;
26    function Get_MaxCompressSize: Integer; safecall;
27    procedure Set_MaxCompressSize(Value: Integer); safecall;
28    function CreatePageFromImage(Image: OleVariant; PageWidth: Double; 
29      PageHeight: Double; Margin: Double): WordBool; safecall;
30    procedure SaveToXML(Target: OleVariant); safecall;
31    property Title: WideString read Get_Title write Set_Title;
32    property CanEmbedFonts: WordBool read Get_CanEmbedFonts write Set_CanEmbedFonts;
33    property CanCompress: WordBool read Get_CanCompress write Set_CanCompress;
34    property Author: WideString read Get_Author write Set_Author;
35    property Subject: WideString read Get_Subject write Set_Subject;
36    property Keywords: WideString read Get_Keywords write Set_Keywords;
37    property Creator: WideString read Get_Creator write Set_Creator;
38    property Pages[Index: Integer]: IPDFPage read Get_Pages;
39    property PageCount: Integer read Get_PageCount;
40    property MinCompressSize: Integer read Get_MinCompressSize 
41      write Set_MinCompressSize;
42    property MaxCompressSize: Integer read Get_MaxCompressSize 
43      write Set_MaxCompressSize;
44  end;

1.3.5.1. Свойства

Свойства интерфейса IPDFDocument:

Имя Тип Доступ Назначение
Author WideString Чтение/Запись

CanCompress WordBool Чтение/Запись

CanEmbedFonts WordBool Чтение/Запись

Creator WideString Чтение/Запись

Keywords WideString Чтение/Запись

MaxCompressSize Integer Чтение/Запись

MinCompressSize Integer Чтение/Запись

PageCount Integer Только для чтения

Pages[Index: Integer]IPDFPage Только для чтения

Subject WideString Чтение/Запись

Title WideString Чтение/Запись


1.3.5.2. Метод Close

Метод интерфейса IPDFDocument.

procedure IPDFDocument.Close;

Метод не имеет параметров.


1.3.5.3. Метод CreatePage

Метод интерфейса IPDFDocument.

function IPDFDocument.CreatePage(Parent: OleVariant): IPDFPage;

Параметры:

Имя Тип Обязательно Значение
Parent OleVariant Да

Замечания:

Возвращает значение типа IPDFPage.


1.3.5.4. Метод CreatePageFromImage

Метод интерфейса IPDFDocument.

1function IPDFDocument.CreatePageFromImage(Image: OleVariant; PageWidth: Double; 
2  PageHeight: Double; Margin: Double): WordBool;

Параметры:

Имя Тип Обязательно Значение
Image OleVariant Да

PageWidth Double Да

PageHeight Double Да

Margin Double Да

Замечания:

Возвращает значение типа WordBool.


1.3.5.5. Метод Save

Метод интерфейса IPDFDocument.

procedure IPDFDocument.Save(Target: OleVariant);

Параметры:

Имя Тип Обязательно Значение
Target OleVariant Да


1.3.5.6. Метод SaveToXML

Метод интерфейса IPDFDocument.

procedure IPDFDocument.SaveToXML(Target: OleVariant);

Параметры:

Имя Тип Обязательно Значение
Target OleVariant Да


1.3.5.7. Метод Serialize

Метод интерфейса IPDFDocument.

procedure IPDFDocument.Serialize(const Stream: IUnknown);

Параметры:

Имя Тип Обязательно Значение
Stream IUnknown Да


1.3.6. Интерфейс IPDFFont

Диаграмма

01type
02  IPDFFont = interface(IDispatch)
03    ['{43FE399A-A724-4076-BAFA-098639628385}']
04    function Get_Spacing: Double; safecall;
05    procedure Set_Spacing(Value: Double); safecall;
06    function Get_WordSpacing: Double; safecall;
07    procedure Set_WordSpacing(Value: Double); safecall;
08    function Get_Scaling: Double; safecall;
09    procedure Set_Scaling(Value: Double); safecall;
10    function Get_RenderingMode: TPDFFontRenderingMode; safecall;
11    procedure Set_RenderingMode(Value: TPDFFontRenderingMode); safecall;
12    function Get_Rise: Double; safecall;
13    procedure Set_Rise(Value: Double); safecall;
14    procedure WriteLine(const LineText: WideString; X: Double; Y: Double); safecall;
15    procedure MeasureLine(const LineText: WideString; out Width: OleVariant; 
16      out Height: OleVariant); safecall;
17    function WriteText(const AText: WideString; X: Double; Y: Double; 
18      Width: Double; Alignment: TPDFTextAlignment): Double; safecall;
19    function MeasureText(const AText: WideString; Width: Double): Double; safecall;
20    function Get_Angle: Double; safecall;
21    procedure Set_Angle(Value: Double); safecall;
22    function Get_LineSpacing: Double; safecall;
23    procedure Set_LineSpacing(Value: Double); safecall;
24    property Spacing: Double read Get_Spacing write Set_Spacing;
25    property WordSpacing: Double read Get_WordSpacing write Set_WordSpacing;
26    property Scaling: Double read Get_Scaling write Set_Scaling;
27    property RenderingMode: TPDFFontRenderingMode read Get_RenderingMode 
28      write Set_RenderingMode;
29    property Rise: Double read Get_Rise write Set_Rise;
30    property Angle: Double read Get_Angle write Set_Angle;
31    property LineSpacing: Double read Get_LineSpacing write Set_LineSpacing;
32  end;

1.3.6.1. Свойства

Свойства интерфейса IPDFFont:

Имя Тип Доступ Назначение
Angle Double Чтение/Запись

LineSpacing Double Чтение/Запись

RenderingModeTPDFFontRenderingMode Чтение/Запись

Rise Double Чтение/Запись

Scaling Double Чтение/Запись

Spacing Double Чтение/Запись

WordSpacing Double Чтение/Запись


1.3.6.2. Метод MeasureLine

Метод интерфейса IPDFFont.

1procedure IPDFFont.MeasureLine(const LineText: WideString; 
2  out Width: OleVariant; out Height: OleVariant);

Параметры:

Имя Тип Обязательно Значение
LineText WideString Да

Width OleVariant Да

Height OleVariant Да


1.3.6.3. Метод MeasureText

Метод интерфейса IPDFFont.

function IPDFFont.MeasureText(const AText: WideString; Width: Double): Double;

Параметры:

Имя Тип Обязательно Значение
AText WideString Да

Width Double Да

Замечания:

Возвращает значение типа Double.


1.3.6.4. Метод WriteLine

Метод интерфейса IPDFFont.

procedure IPDFFont.WriteLine(const LineText: WideString; X: Double; Y: Double);

Параметры:

Имя Тип Обязательно Значение
LineText WideString Да

X Double Да

Y Double Да


1.3.6.5. Метод WriteText

Метод интерфейса IPDFFont.

1function IPDFFont.WriteText(const AText: WideString; X: Double; Y: Double; 
2  Width: Double; Alignment: TPDFTextAlignment): Double;

Параметры:

Имя Тип Обязательно Значение
AText WideString Да

X Double Да

Y Double Да

Width Double Да

AlignmentTPDFTextAlignment Да

Замечания:

Возвращает значение типа Double.


1.3.7. Интерфейс IPDFPage

Диаграмма

01type
02  IPDFPage = interface(IDispatch)
03    ['{749FB131-80FE-46E9-8330-22C1DC346FE7}']
04    function Get_Parent: IPDFPage; safecall;
05    function Get_Title: WideString; safecall;
06    procedure Set_Title(Value: WideString); safecall;
07    function Get_Width: Double; safecall;
08    procedure Set_Width(Value: Double); safecall;
09    function Get_Height: Double; safecall;
10    procedure Set_Height(Value: Double); safecall;
11    function CreateFont(const FontName: WideString; Size: Double; Bold: WordBool; 
12      Italic: WordBool): IPDFFont; safecall;
13    procedure Perform(const Command: WideString); safecall;
14    function Get_LineWidth: Double; safecall;
15    procedure Set_LineWidth(Value: Double); safecall;
16    procedure Line(X1: Double; Y1: Double; X2: Double; Y2: Double); safecall;
17    procedure Rectangle(X1: Double; Y1: Double; Width: Double; Height: Double; 
18      Fill: WordBool); safecall;
19    function Get_LineCap: TPDFLineCap; safecall;
20    procedure Set_LineCap(Value: TPDFLineCap); safecall;
21    function Get_LineJoin: TPDFLineJoin; safecall;
22    procedure Set_LineJoin(Value: TPDFLineJoin); safecall;
23    procedure SetDash(DashArray: OleVariant; Phase: Integer); safecall;
24    procedure SetColor(R: Integer; G: Integer; B: Integer); safecall;
25    procedure PerformColor(const Command: WideString); safecall;
26    procedure Poly(Points: OleVariant; Fill: WordBool); safecall;
27    procedure Image(Image: OleVariant; X: Double; Y: Double; Width: Double; 
28      Height: Double; Transparent: WordBool); safecall;
29    procedure DrawGrid; safecall;
30    procedure Arc(X: Double; Y: Double; Radius: Double; StartAngle: Double; 
31      EndAngle: Double; FillSegment: WordBool; FillSector: WordBool); safecall;
32    procedure Curve(Points: OleVariant; Fill: WordBool); safecall;
33    procedure HyperLink(const URI: WideString; X: Double; Y: Double; Width: Double; 
34      Height: Double); safecall;
35    procedure Pattern(X1: Double; Y1: Double; Width: Double; Height: Double; 
36      PatternPointSize: Double; Percentage: Integer); safecall;
37    procedure Bezier(Points: OleVariant; Fill: WordBool); safecall;
38    procedure XObject(Data: OleVariant); safecall;
39    procedure SetColorCMYK(C: Double; M: Double; Y: Double; K: Double); safecall;
40    procedure LocalLink(const Page: IDispatch; DestinationX: Double; 
41      DestinationY: Double; DestinationWidth: Double; DestinationHeight: Double; 
42      X: Double; Y: Double; Width: Double; Height: Double); safecall;
43    property Parent: IPDFPage read Get_Parent;
44    property Title: WideString read Get_Title write Set_Title;
45    property Width: Double read Get_Width write Set_Width;
46    property Height: Double read Get_Height write Set_Height;
47    property LineWidth: Double read Get_LineWidth write Set_LineWidth;
48    property LineCap: TPDFLineCap read Get_LineCap write Set_LineCap;
49    property LineJoin: TPDFLineJoin read Get_LineJoin write Set_LineJoin;
50  end;

1.3.7.1. Свойства

Свойства интерфейса IPDFPage:

Имя Тип Доступ Назначение
Height Double Чтение/Запись

LineCapTPDFLineCap Чтение/Запись

LineJoinTPDFLineJoin Чтение/Запись

LineWidth Double Чтение/Запись

ParentIPDFPage Только для чтения

Title WideString Чтение/Запись

Width Double Чтение/Запись


1.3.7.2. Метод Arc

Метод интерфейса IPDFPage.

1procedure IPDFPage.Arc(X: Double; Y: Double; Radius: Double; 
2  StartAngle: Double; EndAngle: Double; FillSegment: WordBool; 
3  FillSector: WordBool);

Параметры:

Имя Тип Обязательно Значение
X Double Да

Y Double Да

Radius Double Да

StartAngle Double Да

EndAngle Double Да

FillSegment WordBool Да

FillSector WordBool Да


1.3.7.3. Метод Bezier

Метод интерфейса IPDFPage.

procedure IPDFPage.Bezier(Points: OleVariant; Fill: WordBool);

Параметры:

Имя Тип Обязательно Значение
Points OleVariant Да

Fill WordBool Да


1.3.7.4. Метод CreateFont

Метод интерфейса IPDFPage.

1function IPDFPage.CreateFont(const FontName: WideString; Size: Double; 
2  Bold: WordBool; Italic: WordBool): IPDFFont;

Параметры:

Имя Тип Обязательно Значение
FontName WideString Да

Size Double Да

Bold WordBool Да

Italic WordBool Да

Замечания:

Возвращает значение типа IPDFFont.


1.3.7.5. Метод Curve

Метод интерфейса IPDFPage.

procedure IPDFPage.Curve(Points: OleVariant; Fill: WordBool);

Параметры:

Имя Тип Обязательно Значение
Points OleVariant Да

Fill WordBool Да


1.3.7.6. Метод DrawGrid

Метод интерфейса IPDFPage.

procedure IPDFPage.DrawGrid;

Метод не имеет параметров.


1.3.7.7. Метод HyperLink

Метод интерфейса IPDFPage.

1procedure IPDFPage.HyperLink(const URI: WideString; X: Double; Y: Double; 
2  Width: Double; Height: Double);

Параметры:

Имя Тип Обязательно Значение
URI WideString Да

X Double Да

Y Double Да

Width Double Да

Height Double Да


1.3.7.8. Метод Image

Метод интерфейса IPDFPage.

1procedure IPDFPage.Image(Image: OleVariant; X: Double; Y: Double; 
2  Width: Double; Height: Double; Transparent: WordBool);

Параметры:

Имя Тип Обязательно Значение
Image OleVariant Да

X Double Да

Y Double Да

Width Double Да

Height Double Да

Transparent WordBool Нет


1.3.7.9. Метод Line

Метод интерфейса IPDFPage.

procedure IPDFPage.Line(X1: Double; Y1: Double; X2: Double; Y2: Double);

Параметры:

Имя Тип Обязательно Значение
X1 Double Да

Y1 Double Да

X2 Double Да

Y2 Double Да


1.3.7.10. Метод LocalLink

Метод интерфейса IPDFPage.

1procedure IPDFPage.LocalLink(const Page: IDispatch; DestinationX: Double; 
2  DestinationY: Double; DestinationWidth: Double; DestinationHeight: Double; 
3  X: Double; Y: Double; Width: Double; Height: Double);

Параметры:

Имя Тип Обязательно Значение
Page IDispatch Да

DestinationX Double Да

DestinationY Double Да

DestinationWidth Double Да

DestinationHeight Double Да

X Double Да

Y Double Да

Width Double Да

Height Double Да


1.3.7.11. Метод Pattern

Метод интерфейса IPDFPage.

1procedure IPDFPage.Pattern(X1: Double; Y1: Double; Width: Double; 
2  Height: Double; PatternPointSize: Double; Percentage: Integer);

Параметры:

Имя Тип Обязательно Значение
X1 Double Да

Y1 Double Да

Width Double Да

Height Double Да

PatternPointSize Double Да

Percentage Integer Да


1.3.7.12. Метод Perform

Метод интерфейса IPDFPage.

procedure IPDFPage.Perform(const Command: WideString);

Параметры:

Имя Тип Обязательно Значение
Command WideString Да


1.3.7.13. Метод PerformColor

Метод интерфейса IPDFPage.

procedure IPDFPage.PerformColor(const Command: WideString);

Параметры:

Имя Тип Обязательно Значение
Command WideString Да


1.3.7.14. Метод Poly

Метод интерфейса IPDFPage.

procedure IPDFPage.Poly(Points: OleVariant; Fill: WordBool);

Параметры:

Имя Тип Обязательно Значение
Points OleVariant Да

Fill WordBool Да


1.3.7.15. Метод Rectangle

Метод интерфейса IPDFPage.

1procedure IPDFPage.Rectangle(X1: Double; Y1: Double; Width: Double; 
2  Height: Double; Fill: WordBool);

Параметры:

Имя Тип Обязательно Значение
X1 Double Да

Y1 Double Да

Width Double Да

Height Double Да

Fill WordBool Да


1.3.7.16. Метод SetColor

Метод интерфейса IPDFPage.

procedure IPDFPage.SetColor(R: Integer; G: Integer; B: Integer);

Параметры:

Имя Тип Обязательно Значение
R Integer Да

G Integer Да

B Integer Да


1.3.7.17. Метод SetColorCMYK

Метод интерфейса IPDFPage.

procedure IPDFPage.SetColorCMYK(C: Double; M: Double; Y: Double; K: Double);

Параметры:

Имя Тип Обязательно Значение
C Double Да

M Double Да

Y Double Да

K Double Да


1.3.7.18. Метод SetDash

Метод интерфейса IPDFPage.

procedure IPDFPage.SetDash(DashArray: OleVariant; Phase: Integer);

Параметры:

Имя Тип Обязательно Значение
DashArray OleVariant Да

Phase Integer Да


1.3.7.19. Метод XObject

Метод интерфейса IPDFPage.

procedure IPDFPage.XObject(Data: OleVariant);

Параметры:

Имя Тип Обязательно Значение
Data OleVariant Да


1.4. Порядок создания

Для создания шаблона PDF-документа необходимо в системной форме Платформы выбрать класс, к которому будет строиться документ. В подменю "Подпрограммы" вызвать контекстное меню и выбрать пункт "Создать шаблон отчета PDF". Заполнить необходимые поля и приступить к созданию скрипта в окне "Скрипт шаблона".

Конструктор
  1. Объявляем все переменные.
  2. Создаем страницы
  3. Устанавливаем все свойства документа и страниц
  4. Рисуем простые графические объекты
  5. Объявляем все используемые шрифты
  6. Расставляем постоянный текст на странице
  7. Расставляем переменный текст на странице
  8. Вставляем или создаем сложные графические объекты
Пример
Пример документа PDF:
001set LDataSet = createDataSet("TRoundAbiturSt")
002'Объявление переменных
003LDataSet.AddQueryItem 1, "ID", ID
004LDataSet.AddQueryItem 0, "RoundComp$N"
005LDataSet.AddQueryItem 0, "BachRound$N"
006LDataSet.AddQueryItem 0, "LastName"
007LDataSet.AddQueryItem 0, "FirstName"
008LDataSet.AddQueryItem 0, "MiddleName"
009LDataSet.AddQueryItem 0, "BirthDate"
010LDataSet.AddQueryItem 0, "RegNumber"
011LDataSet.AddQueryItem 0, "SecondStageCity$D"
012LDataSet.AddQueryItem 0, "PhoneList"
013
014'Присваивание переменным значений
015OlympName = LDataSet.Field("RoundComp$N")
016OlympClass = LDataSet.Field("BachRound$N")
017LastName = LDataSet.Field("LastName")
018FirstName = LDataSet.Field("FirstName")
019MiddleName = LDataSet.Field("MiddleName")
020if not IsNull(LDataSet.Field("BirthDate")) then
021  BirthDate = LDataSet.Field("BirthDate")
022else
023  BirthDate = "(не задана)"
024end if
025RegNo = LDataSet.Field("RegNumber")
026if not IsNull(LDataSet.Field("SecondStageCity$D")) then
027  OlympCity = LDataSet.Field("SecondStageCity$D")
028else
029  OlympCity = "(не выбран город участия)"
030end if
031if not IsNull(LDataSet.Field("PhoneList")) then
032  Phone = LDataSet.Field("PhoneList")
033else
034  Phone = ""
035end if
036
037'CanCompress = False - признак сжатия файла
038set page = CreatePage(Null) ' создаем страницу
039'Объявляем используемые шрифты
040set font = page.createFont("Arial", 20, False, False)
041set labelFont = page.createFont("Arial", 16, False, False)
042set dataFont = page.createFont("Arial", 18, True, False)
043set bigFont = page.createFont("Arial", 24, False, False)
044
045'page.DrawGrid  - рисуем сетку для удобства отладки
046
047page.LineWidth = 0.5 ' Установка толщины линии
048
049' Рисуем прямоугольники
050page.Rectangle 8, 12, 4, 4, True
051page.Rectangle 190, 12, 4, 4, True
052
053page.Rectangle 8, 273, 4, 4, True
054page.Rectangle 105, 273, 4, 4, True
055page.Rectangle 190, 273, 4, 4, True
056
057'Выводим постоянный и переменный текст
058Q = font.WriteText ("Межрегиональная олимпиада школьников", 12, 20, 178, 2)
059Q = bigFont.WriteText (OlympName, 12, 45, 178, 2)
060Q = bigFont.WriteText (OlympClass, 12, 56, 178, 2)
061
062Q = font.WriteText ("Титульный лист", 12, 72, 178, 2)
063
064labelFont.WriteLine "Фамилия", 25, 115 - 23
065labelFont.WriteLine "Имя", 25, 123 - 23
066labelFont.WriteLine "Отчество", 25, 131 - 23
067labelFont.WriteLine "Дата", 25, 139 - 23
068labelFont.WriteLine "рождения", 25, 145 - 23
069
070labelFont.WriteLine "Регистрационный номер", 25, 169 - 30
071labelFont.WriteLine "Город проведения", 25, 177 - 30
072labelFont.WriteLine "Аудитория", 25, 185 - 30
073
074
075labelFont.WriteLine "Дата", 25, 211
076labelFont.WriteLine "Подпись", 25, 219
077labelFont.WriteLine "Телефон", 25, 227
078
079
080dataFont.WriteLine LastName, 63, 114 - 23
081dataFont.WriteLine FirstName, 63, 122 - 23
082dataFont.WriteLine MiddleName, 63, 130 - 23
083dataFont.WriteLine BirthDate, 63, 141 - 23
084
085dataFont.WriteLine RegNo, 100, 168 - 30
086dataFont.WriteLine OlympCity, 100, 176 - 30
087
088' Рисуем линии
089page.line 100, 192 - 30, 150, 192 - 30
090page.line 58, 218, 108, 218
091page.line 58, 226, 108, 226
092Q = dataFont.WriteText(Phone, 58, 226, 65, 0)
093
094
095
096' Устанавливаем новый цвет
097page.setColor 192, 192, 192
098
099S = "шифр"
100font.MeasureLine S, W, H  ' измеряем текстовый блок
101Q = font.WriteText(S, 139, 244 + ((23 - H) / 2), 40, 2) ' располагаем текстовый
102блок на странице
103
104' Устанавливаем новый цвет
105page.setColor 255, 0, 0
106' Устанавливаем толщину линий в 1 пиксель
107page.LineWidth = 0
108' Рисуем линии по координатам
109X = 139
110Y = 267
111
112page.line X, Y - 3, X, Y + 3
113page.line X - 3, Y, X + 3, Y
114
115X = X + 40
116page.line X, Y - 3, X, Y + 3
117page.line X - 3, Y, X + 3, Y
118
119
120Y = Y - 23
121page.line X, Y - 3, X, Y + 3
122page.line X - 3, Y, X + 3, Y
123
124X = X - 40
125page.line X, Y - 3, X, Y + 3
126page.line X - 3, Y, X + 3, Y

Результат:

Титул

2. Создание шаблонов SpreadSheet

2.1. Справочник по интерфейсам

2.1.1. Перечисление TSheetHeaderFooter
1type
2  TSheetHeaderFooter = (shfOddHeader, shfOddFooter, shfEvenHeader, shfEvenFooter, 
3    shfFirstHeader, shfFirstFooter);

Или

1type
2  TSheetHeaderFooter = TOleEnum;
3const
4  shfOddHeader = $00000000;
5  shfOddFooter = $00000001;
6  shfEvenHeader = $00000002;
7  shfEvenFooter = $00000003;
8  shfFirstHeader = $00000004;
9  shfFirstFooter = $00000005;

Элементы перечисления:

Имя Значение Назначение
shfOddHeader 0

shfOddFooter 1

shfEvenHeader 2

shfEvenFooter 3

shfFirstHeader 4

shfFirstFooter 5


2.1.2. Перечисление TSheetHeaderFooterImage
1type
2  TSheetHeaderFooterImage = (shfiLeft, shfiCenter, shfiRight);

Или

1type
2  TSheetHeaderFooterImage = TOleEnum;
3const
4  shfiLeft = $00000000;
5  shfiCenter = $00000001;
6  shfiRight = $00000002;

Элементы перечисления:

Имя Значение Назначение
shfiLeft 0

shfiCenter 1

shfiRight 2


2.1.3. Перечисление XlBorderWeight
1type
2  XlBorderWeight = (xlMedium = -4138, xlHairline = 1, xlThin = 2, xlThick = 4);

Или

1type
2  XlBorderWeight = TOleEnum;
3const
4  xlMedium = $FFFFEFD6;
5  xlHairline = $00000001;
6  xlThin = $00000002;
7  xlThick = $00000004;

Элементы перечисления:

Имя Значение Назначение
xlMedium -4138

xlHairline 1

xlThin 2

xlThick 4


2.1.4. Перечисление XlFormatConditionOperator
1type
2  XlFormatConditionOperator = (xlBetween = 1, xlNotBetween = 2, xlEqual = 3, 
3    xlNotEqual = 4, xlGreater = 5, xlLess = 6, xlGreaterEqual = 7, xlLessEqual = 8);

Или

01type
02  XlFormatConditionOperator = TOleEnum;
03const
04  xlBetween = $00000001;
05  xlNotBetween = $00000002;
06  xlEqual = $00000003;
07  xlNotEqual = $00000004;
08  xlGreater = $00000005;
09  xlLess = $00000006;
10  xlGreaterEqual = $00000007;
11  xlLessEqual = $00000008;

Элементы перечисления:

Имя Значение Назначение
xlBetween 1

xlNotBetween 2

xlEqual 3

xlNotEqual 4

xlGreater 5

xlLess 6

xlGreaterEqual 7

xlLessEqual 8


2.1.5. Перечисление XlFormatConditionType
1type
2  XlFormatConditionType = (xlCellValue = 1, xlExpression = 2);

Или

1type
2  XlFormatConditionType = TOleEnum;
3const
4  xlCellValue = $00000001;
5  xlExpression = $00000002;

Элементы перечисления:

Имя Значение Назначение
xlCellValue 1

xlExpression 2


2.1.6. Перечисление XlHAlign
1type
2  XlHAlign = (xlHAlignRight = -4152, xlHAlignLeft = -4131, xlHAlignJustify = -
3    4130, xlHAlignDistributed = -4117, xlHAlignCenter = -4108, xlHAlignGeneral = 1, 
4    xlHAlignFill = 5, xlHAlignCenterAcrossSelection = 7);

Или

01type
02  XlHAlign = TOleEnum;
03const
04  xlHAlignRight = $FFFFEFC8;
05  xlHAlignLeft = $FFFFEFDD;
06  xlHAlignJustify = $FFFFEFDE;
07  xlHAlignDistributed = $FFFFEFEB;
08  xlHAlignCenter = $FFFFEFF4;
09  xlHAlignGeneral = $00000001;
10  xlHAlignFill = $00000005;
11  xlHAlignCenterAcrossSelection = $00000007;

Элементы перечисления:

Имя Значение Назначение
xlHAlignRight -4152

xlHAlignLeft -4131

xlHAlignJustify -4130

xlHAlignDistributed -4117

xlHAlignCenter -4108

xlHAlignGeneral 1

xlHAlignFill 5

xlHAlignCenterAcrossSelection 7


2.1.7. Перечисление XlLineStyle
1type
2  XlLineStyle = (xlLineStyleNone = -4142, xlDouble = -4119, xlDot = -4118, 
3    xlDash = -4115, xlContinuous = 1, xlDashDot = 4, xlDashDotDot = 5, 
4    xlSlantDashDot = 13);

Или

01type
02  XlLineStyle = TOleEnum;
03const
04  xlLineStyleNone = $FFFFEFD2;
05  xlDouble = $FFFFEFE9;
06  xlDot = $FFFFEFEA;
07  xlDash = $FFFFEFED;
08  xlContinuous = $00000001;
09  xlDashDot = $00000004;
10  xlDashDotDot = $00000005;
11  xlSlantDashDot = $0000000D;

Элементы перечисления:

Имя Значение Назначение
xlLineStyleNone -4142

xlDouble -4119

xlDot -4118

xlDash -4115

xlContinuous 1

xlDashDot 4

xlDashDotDot 5

xlSlantDashDot 13


2.1.8. Перечисление XlOrientation
1type
2  XlOrientation = (xlUpward = -4171, xlDownward = -4170, xlVertical = -4166, 
3    xlHorizontal = -4128);

Или

1type
2  XlOrientation = TOleEnum;
3const
4  xlUpward = $FFFFEFB5;
5  xlDownward = $FFFFEFB6;
6  xlVertical = $FFFFEFBA;
7  xlHorizontal = $FFFFEFE0;

Элементы перечисления:

Имя Значение Назначение
xlUpward -4171

xlDownward -4170

xlVertical -4166

xlHorizontal -4128


2.1.9. Перечисление XlPageOrientation
1type
2  XlPageOrientation = (xlPortrait = 1, xlLandscape = 2);

Или

1type
2  XlPageOrientation = TOleEnum;
3const
4  xlPortrait = $00000001;
5  xlLandscape = $00000002;

Элементы перечисления:

Имя Значение Назначение
xlPortrait 1

xlLandscape 2


2.1.10. Перечисление XlPaperSize
01type
02  XlPaperSize = (xlPaperLetter = 1, xlPaperLetterSmall = 2, xlPaperTabloid = 3, 
03    xlPaperLedger = 4, xlPaperLegal = 5, xlPaperStatement = 6, 
04    xlPaperExecutive = 7, xlPaperA3 = 8, xlPaperA4 = 9, xlPaperA4Small = 10, 
05    xlPaperA5 = 11, xlPaperB4 = 12, xlPaperB5 = 13, xlPaperFolio = 14, 
06    xlPaperQuarto = 15, xlPaper10x14 = 16, xlPaper11x17 = 17, xlPaperNote = 18, 
07    xlPaperEnvelope9 = 19, xlPaperEnvelope10 = 20, xlPaperEnvelope11 = 21, 
08    xlPaperEnvelope12 = 22, xlPaperEnvelope14 = 23, xlPaperCsheet = 24, 
09    xlPaperDsheet = 25, xlPaperEsheet = 26, xlPaperEnvelopeDL = 27, 
10    xlPaperEnvelopeC5 = 28, xlPaperEnvelopeC3 = 29, xlPaperEnvelopeC4 = 30, 
11    xlPaperEnvelopeC6 = 31, xlPaperEnvelopeC65 = 32, xlPaperEnvelopeB4 = 33, 
12    xlPaperEnvelopeB5 = 34, xlPaperEnvelopeB6 = 35, xlPaperEnvelopeItaly = 36, 
13    xlPaperEnvelopeMonarch = 37, xlPaperEnvelopePersonal = 38, 
14    xlPaperFanfoldUS = 39, xlPaperFanfoldStdGerman = 40, 
15    xlPaperFanfoldLegalGerman = 41, xlPaperUser = 256);

Или

01type
02  XlPaperSize = TOleEnum;
03const
04  xlPaperLetter = $00000001;
05  xlPaperLetterSmall = $00000002;
06  xlPaperTabloid = $00000003;
07  xlPaperLedger = $00000004;
08  xlPaperLegal = $00000005;
09  xlPaperStatement = $00000006;
10  xlPaperExecutive = $00000007;
11  xlPaperA3 = $00000008;
12  xlPaperA4 = $00000009;
13  xlPaperA4Small = $0000000A;
14  xlPaperA5 = $0000000B;
15  xlPaperB4 = $0000000C;
16  xlPaperB5 = $0000000D;
17  xlPaperFolio = $0000000E;
18  xlPaperQuarto = $0000000F;
19  xlPaper10x14 = $00000010;
20  xlPaper11x17 = $00000011;
21  xlPaperNote = $00000012;
22  xlPaperEnvelope9 = $00000013;
23  xlPaperEnvelope10 = $00000014;
24  xlPaperEnvelope11 = $00000015;
25  xlPaperEnvelope12 = $00000016;
26  xlPaperEnvelope14 = $00000017;
27  xlPaperCsheet = $00000018;
28  xlPaperDsheet = $00000019;
29  xlPaperEsheet = $0000001A;
30  xlPaperEnvelopeDL = $0000001B;
31  xlPaperEnvelopeC5 = $0000001C;
32  xlPaperEnvelopeC3 = $0000001D;
33  xlPaperEnvelopeC4 = $0000001E;
34  xlPaperEnvelopeC6 = $0000001F;
35  xlPaperEnvelopeC65 = $00000020;
36  xlPaperEnvelopeB4 = $00000021;
37  xlPaperEnvelopeB5 = $00000022;
38  xlPaperEnvelopeB6 = $00000023;
39  xlPaperEnvelopeItaly = $00000024;
40  xlPaperEnvelopeMonarch = $00000025;
41  xlPaperEnvelopePersonal = $00000026;
42  xlPaperFanfoldUS = $00000027;
43  xlPaperFanfoldStdGerman = $00000028;
44  xlPaperFanfoldLegalGerman = $00000029;
45  xlPaperUser = $00000100;

Элементы перечисления:

Имя Значение Назначение
xlPaperLetter 1

xlPaperLetterSmall 2

xlPaperTabloid 3

xlPaperLedger 4

xlPaperLegal 5

xlPaperStatement 6

xlPaperExecutive 7

xlPaperA3 8

xlPaperA4 9

xlPaperA4Small 10

xlPaperA5 11

xlPaperB4 12

xlPaperB5 13

xlPaperFolio 14

xlPaperQuarto 15

xlPaper10x14 16

xlPaper11x17 17

xlPaperNote 18

xlPaperEnvelope9 19

xlPaperEnvelope10 20

xlPaperEnvelope11 21

xlPaperEnvelope12 22

xlPaperEnvelope14 23

xlPaperCsheet 24

xlPaperDsheet 25

xlPaperEsheet 26

xlPaperEnvelopeDL 27

xlPaperEnvelopeC5 28

xlPaperEnvelopeC3 29

xlPaperEnvelopeC4 30

xlPaperEnvelopeC6 31

xlPaperEnvelopeC65 32

xlPaperEnvelopeB4 33

xlPaperEnvelopeB5 34

xlPaperEnvelopeB6 35

xlPaperEnvelopeItaly 36

xlPaperEnvelopeMonarch 37

xlPaperEnvelopePersonal 38

xlPaperFanfoldUS 39

xlPaperFanfoldStdGerman 40

xlPaperFanfoldLegalGerman 41

xlPaperUser 256


2.1.11. Перечисление XlPattern
1type
2  XlPattern = (xlPatternVertical = -4166, xlPatternUp = -4162, xlPatternNone = -
3    4142, xlPatternHorizontal = -4128, xlPatternGray75 = -4126, xlPatternGray50 = -
4    4125, xlPatternGray25 = -4124, xlPatternDown = -4121, xlPatternAutomatic = -
5    4105, xlPatternSolid = 1, xlPatternChecker = 9, xlPatternSemiGray75 = 10, 
6    xlPatternLightHorizontal = 11, xlPatternLightVertical = 12, 
7    xlPatternLightDown = 13, xlPatternLightUp = 14, xlPatternGrid = 15, 
8    xlPatternCrissCross = 16, xlPatternGray16 = 17, xlPatternGray8 = 18);

Или

01type
02  XlPattern = TOleEnum;
03const
04  xlPatternVertical = $FFFFEFBA;
05  xlPatternUp = $FFFFEFBE;
06  xlPatternNone = $FFFFEFD2;
07  xlPatternHorizontal = $FFFFEFE0;
08  xlPatternGray75 = $FFFFEFE2;
09  xlPatternGray50 = $FFFFEFE3;
10  xlPatternGray25 = $FFFFEFE4;
11  xlPatternDown = $FFFFEFE7;
12  xlPatternAutomatic = $FFFFEFF7;
13  xlPatternSolid = $00000001;
14  xlPatternChecker = $00000009;
15  xlPatternSemiGray75 = $0000000A;
16  xlPatternLightHorizontal = $0000000B;
17  xlPatternLightVertical = $0000000C;
18  xlPatternLightDown = $0000000D;
19  xlPatternLightUp = $0000000E;
20  xlPatternGrid = $0000000F;
21  xlPatternCrissCross = $00000010;
22  xlPatternGray16 = $00000011;
23  xlPatternGray8 = $00000012;

Элементы перечисления:

Имя Значение Назначение
xlPatternVertical -4166

xlPatternUp -4162

xlPatternNone -4142

xlPatternHorizontal -4128

xlPatternGray75 -4126

xlPatternGray50 -4125

xlPatternGray25 -4124

xlPatternDown -4121

xlPatternAutomatic -4105

xlPatternSolid 1

xlPatternChecker 9

xlPatternSemiGray75 10

xlPatternLightHorizontal 11

xlPatternLightVertical 12

xlPatternLightDown 13

xlPatternLightUp 14

xlPatternGrid 15

xlPatternCrissCross 16

xlPatternGray16 17

xlPatternGray8 18


2.1.12. Перечисление XlSheetVisibility
1type
2  XlSheetVisibility = (xlSheetVisible = -1, xlSheetHidden = 0, 
3    xlSheetVeryHidden = 2);

Или

1type
2  XlSheetVisibility = TOleEnum;
3const
4  xlSheetVisible = $FFFFFFFF;
5  xlSheetHidden = $00000000;
6  xlSheetVeryHidden = $00000002;

Элементы перечисления:

Имя Значение Назначение
xlSheetVisible -1

xlSheetHidden 0

xlSheetVeryHidden 2


2.1.13. Перечисление XlVAlign
1type
2  XlVAlign = (xlVAlignTop = -4160, xlVAlignJustify = -4130, 
3    xlVAlignDistributed = -4117, xlVAlignCenter = -4108, xlVAlignBottom = -4107);

Или

1type
2  XlVAlign = TOleEnum;
3const
4  xlVAlignTop = $FFFFEFC0;
5  xlVAlignJustify = $FFFFEFDE;
6  xlVAlignDistributed = $FFFFEFEB;
7  xlVAlignCenter = $FFFFEFF4;
8  xlVAlignBottom = $FFFFEFF5;

Элементы перечисления:

Имя Значение Назначение
xlVAlignTop -4160

xlVAlignJustify -4130

xlVAlignDistributed -4117

xlVAlignCenter -4108

xlVAlignBottom -4107


2.1.14. Интерфейс ISheetStyle

Диаграмма

001type
002  ISheetStyle = interface(IDispatch)
003    ['{423CFD04-4A32-469D-8AD6-E9FA41E86414}']
004    function Get_ApplyBorder: WordBool; safecall;
005    procedure Set_ApplyBorder(Value: WordBool); safecall;
006    function Get_ApplyFill: WordBool; safecall;
007    procedure Set_ApplyFill(Value: WordBool); safecall;
008    function Get_ApplyFont: WordBool; safecall;
009    procedure Set_ApplyFont(Value: WordBool); safecall;
010    function Get_ApplyNumberFormat: WordBool; safecall;
011    procedure Set_ApplyNumberFormat(Value: WordBool); safecall;
012    function Get_NumberFormat: WideString; safecall;
013    procedure Set_NumberFormat(Value: WideString); safecall;
014    function Get_Bold: WordBool; safecall;
015    procedure Set_Bold(Value: WordBool); safecall;
016    function Get_Italic: WordBool; safecall;
017    procedure Set_Italic(Value: WordBool); safecall;
018    function Get_Underline: WordBool; safecall;
019    procedure Set_Underline(Value: WordBool); safecall;
020    function Get_FontColor: OLE_COLOR; safecall;
021    procedure Set_FontColor(Value: OLE_COLOR); safecall;
022    function Get_BackgroundColor: OLE_COLOR; safecall;
023    procedure Set_BackgroundColor(Value: OLE_COLOR); safecall;
024    function Get_Pattern: XlPattern; safecall;
025    procedure Set_Pattern(Value: XlPattern); safecall;
026    function Get_RightBorderStyle: XlLineStyle; safecall;
027    procedure Set_RightBorderStyle(Value: XlLineStyle); safecall;
028    function Get_RightBorderWidth: XlBorderWeight; safecall;
029    procedure Set_RightBorderWidth(Value: XlBorderWeight); safecall;
030    function Get_RightBorderColor: OLE_COLOR; safecall;
031    procedure Set_RightBorderColor(Value: OLE_COLOR); safecall;
032    function Get_BottomBorderStyle: XlLineStyle; safecall;
033    procedure Set_BottomBorderStyle(Value: XlLineStyle); safecall;
034    function Get_BottomBorderWidth: XlBorderWeight; safecall;
035    procedure Set_BottomBorderWidth(Value: XlBorderWeight); safecall;
036    function Get_BottomBorderColor: OLE_COLOR; safecall;
037    procedure Set_BottomBorderColor(Value: OLE_COLOR); safecall;
038    function Get_TopBorderStyle: XlLineStyle; safecall;
039    procedure Set_TopBorderStyle(Value: XlLineStyle); safecall;
040    function Get_TopBorderWidth: XlBorderWeight; safecall;
041    procedure Set_TopBorderWidth(Value: XlBorderWeight); safecall;
042    function Get_TopBorderColor: OLE_COLOR; safecall;
043    procedure Set_TopBorderColor(Value: OLE_COLOR); safecall;
044    function Get_LeftBorderStyle: XlLineStyle; safecall;
045    procedure Set_LeftBorderStyle(Value: XlLineStyle); safecall;
046    function Get_LeftBorderWidth: XlBorderWeight; safecall;
047    procedure Set_LeftBorderWidth(Value: XlBorderWeight); safecall;
048    function Get_LeftBorderColor: OLE_COLOR; safecall;
049    procedure Set_LeftBorderColor(Value: OLE_COLOR); safecall;
050    function Get_DiagonalBorderStyle: XlLineStyle; safecall;
051    procedure Set_DiagonalBorderStyle(Value: XlLineStyle); safecall;
052    function Get_DiagonalBorderWidth: XlBorderWeight; safecall;
053    procedure Set_DiagonalBorderWidth(Value: XlBorderWeight); safecall;
054    function Get_DiagonalBorderColor: OLE_COLOR; safecall;
055    procedure Set_DiagonalBorderColor(Value: OLE_COLOR); safecall;
056    function Get_DiagonalBorderUp: WordBool; safecall;
057    procedure Set_DiagonalBorderUp(Value: WordBool); safecall;
058    function Get_DiagonalBorderDown: WordBool; safecall;
059    procedure Set_DiagonalBorderDown(Value: WordBool); safecall;
060    property ApplyBorder: WordBool read Get_ApplyBorder write Set_ApplyBorder;
061    property ApplyFill: WordBool read Get_ApplyFill write Set_ApplyFill;
062    property ApplyFont: WordBool read Get_ApplyFont write Set_ApplyFont;
063    property ApplyNumberFormat: WordBool read Get_ApplyNumberFormat 
064      write Set_ApplyNumberFormat;
065    property NumberFormat: WideString read Get_NumberFormat write Set_NumberFormat;
066    property Bold: WordBool read Get_Bold write Set_Bold;
067    property Italic: WordBool read Get_Italic write Set_Italic;
068    property Underline: WordBool read Get_Underline write Set_Underline;
069    property FontColor: OLE_COLOR read Get_FontColor write Set_FontColor;
070    property BackgroundColor: OLE_COLOR read Get_BackgroundColor 
071      write Set_BackgroundColor;
072    property Pattern: XlPattern read Get_Pattern write Set_Pattern;
073    property RightBorderStyle: XlLineStyle read Get_RightBorderStyle 
074      write Set_RightBorderStyle;
075    property RightBorderWidth: XlBorderWeight read Get_RightBorderWidth 
076      write Set_RightBorderWidth;
077    property RightBorderColor: OLE_COLOR read Get_RightBorderColor 
078      write Set_RightBorderColor;
079    property BottomBorderStyle: XlLineStyle read Get_BottomBorderStyle 
080      write Set_BottomBorderStyle;
081    property BottomBorderWidth: XlBorderWeight read Get_BottomBorderWidth 
082      write Set_BottomBorderWidth;
083    property BottomBorderColor: OLE_COLOR read Get_BottomBorderColor 
084      write Set_BottomBorderColor;
085    property TopBorderStyle: XlLineStyle read Get_TopBorderStyle 
086      write Set_TopBorderStyle;
087    property TopBorderWidth: XlBorderWeight read Get_TopBorderWidth 
088      write Set_TopBorderWidth;
089    property TopBorderColor: OLE_COLOR read Get_TopBorderColor 
090      write Set_TopBorderColor;
091    property LeftBorderStyle: XlLineStyle read Get_LeftBorderStyle 
092      write Set_LeftBorderStyle;
093    property LeftBorderWidth: XlBorderWeight read Get_LeftBorderWidth 
094      write Set_LeftBorderWidth;
095    property LeftBorderColor: OLE_COLOR read Get_LeftBorderColor 
096      write Set_LeftBorderColor;
097    property DiagonalBorderStyle: XlLineStyle read Get_DiagonalBorderStyle 
098      write Set_DiagonalBorderStyle;
099    property DiagonalBorderWidth: XlBorderWeight read Get_DiagonalBorderWidth 
100      write Set_DiagonalBorderWidth;
101    property DiagonalBorderColor: OLE_COLOR read Get_DiagonalBorderColor 
102      write Set_DiagonalBorderColor;
103    property DiagonalBorderUp: WordBool read Get_DiagonalBorderUp 
104      write Set_DiagonalBorderUp;
105    property DiagonalBorderDown: WordBool read Get_DiagonalBorderDown 
106      write Set_DiagonalBorderDown;
107  end;

2.1.14.1. Свойства

Свойства интерфейса ISheetStyle:

Имя Тип Доступ Назначение
ApplyBorder WordBool Чтение/Запись

ApplyFill WordBool Чтение/Запись

ApplyFont WordBool Чтение/Запись

ApplyNumberFormat WordBool Чтение/Запись

BackgroundColor OLE_COLOR Чтение/Запись

Bold WordBool Чтение/Запись

BottomBorderColor OLE_COLOR Чтение/Запись

BottomBorderStyleXlLineStyle Чтение/Запись

BottomBorderWidthXlBorderWeight Чтение/Запись

DiagonalBorderColor OLE_COLOR Чтение/Запись

DiagonalBorderDown WordBool Чтение/Запись

DiagonalBorderStyleXlLineStyle Чтение/Запись

DiagonalBorderUp WordBool Чтение/Запись

DiagonalBorderWidthXlBorderWeight Чтение/Запись

FontColor OLE_COLOR Чтение/Запись

Italic WordBool Чтение/Запись

LeftBorderColor OLE_COLOR Чтение/Запись

LeftBorderStyleXlLineStyle Чтение/Запись

LeftBorderWidthXlBorderWeight Чтение/Запись

NumberFormat WideString Чтение/Запись

PatternXlPattern Чтение/Запись

RightBorderColor OLE_COLOR Чтение/Запись

RightBorderStyleXlLineStyle Чтение/Запись

RightBorderWidthXlBorderWeight Чтение/Запись

TopBorderColor OLE_COLOR Чтение/Запись

TopBorderStyleXlLineStyle Чтение/Запись

TopBorderWidthXlBorderWeight Чтение/Запись

Underline WordBool Чтение/Запись


2.1.15. Интерфейс ISpreadSheet

Диаграмма

001type
002  ISpreadSheet = interface(IDispatch)
003    ['{0C757D48-CCB4-4482-9094-A2DDE9569B8A}']
004    function Get_Value(Row: Integer; Col: Integer): OleVariant; safecall;
005    procedure Set_Value(Row: Integer; Col: Integer; Value: OleVariant); safecall;
006    function TryCopyCells(SourceLeft: Integer; SourceTop: Integer; 
007      SourceRight: Integer; SourceBottom: Integer; DestinationLeft: Integer; 
008      DestinationTop: Integer; DestinationRight: Integer; 
009      DestinationBottom: Integer): WordBool; safecall;
010    function Get_FormulasDocument: OleVariant; safecall;
011    function Get_DefaultColWidth: Single; safecall;
012    procedure Set_DefaultColWidth(Value: Single); safecall;
013    function Get_DefaultRowHeight: Single; safecall;
014    procedure Set_DefaultRowHeight(Value: Single); safecall;
015    function Get_DefaultFontName: WideString; safecall;
016    procedure Set_DefaultFontName(Value: WideString); safecall;
017    function Get_DefaultFontSize: Single; safecall;
018    procedure Set_DefaultFontSize(Value: Single); safecall;
019    procedure Touch(Row: Integer; Col: Integer; Used: WordBool); safecall;
020    function Get_Accessible(Row: Integer; Col: Integer): WordBool; safecall;
021    function Get_Text(Row: Integer; Col: Integer): WideString; safecall;
022    function Get_FormulaText(Row: Integer; Col: Integer): WideString; safecall;
023    procedure Set_FormulaText(Row: Integer; Col: Integer; Value: WideString); safecall;
024    function Get_FormulaNode(Row: Integer; Col: Integer): OleVariant; safecall;
025    procedure Set_FormulaNode(Row: Integer; Col: Integer; Value: OleVariant); safecall;
026    function Get_HasFormula(Row: Integer; Col: Integer): WordBool; safecall;
027    function Get_Comment(Row: Integer; Col: Integer): WideString; safecall;
028    procedure Set_Comment(Row: Integer; Col: Integer; Value: WideString); safecall;
029    function Get_NumberFormat(Row: Integer; Col: Integer): WideString; safecall;
030    procedure Set_NumberFormat(Row: Integer; Col: Integer; Value: WideString); safecall;
031    function Get_FontName(Row: Integer; Col: Integer): WideString; safecall;
032    procedure Set_FontName(Row: Integer; Col: Integer; Value: WideString); safecall;
033    function Get_FontSize(Row: Integer; Col: Integer): Single; safecall;
034    procedure Set_FontSize(Row: Integer; Col: Integer; Value: Single); safecall;
035    function Get_Bold(Row: Integer; Col: Integer): WordBool; safecall;
036    procedure Set_Bold(Row: Integer; Col: Integer; Value: WordBool); safecall;
037    function Get_Italic(Row: Integer; Col: Integer): WordBool; safecall;
038    procedure Set_Italic(Row: Integer; Col: Integer; Value: WordBool); safecall;
039    function Get_Underline(Row: Integer; Col: Integer): WordBool; safecall;
040    procedure Set_Underline(Row: Integer; Col: Integer; Value: WordBool); safecall;
041    function Get_FontColor(Row: Integer; Col: Integer): OLE_COLOR; safecall;
042    procedure Set_FontColor(Row: Integer; Col: Integer; Value: OLE_COLOR); safecall;
043    function Get_BackgroundColor(Row: Integer; Col: Integer): OLE_COLOR; safecall;
044    procedure Set_BackgroundColor(Row: Integer; Col: Integer; Value: OLE_COLOR); safecall;
045    function Get_WrapText(Row: Integer; Col: Integer): WordBool; safecall;
046    procedure Set_WrapText(Row: Integer; Col: Integer; Value: WordBool); safecall;
047    function Get_HorizontalAlignment(Row: Integer; Col: Integer): XlHAlign; safecall;
048    procedure Set_HorizontalAlignment(Row: Integer; Col: Integer; Value: XlHAlign); safecall;
049    function Get_VerticalAlignment(Row: Integer; Col: Integer): XlHAlign; safecall;
050    procedure Set_VerticalAlignment(Row: Integer; Col: Integer; Value: XlHAlign); safecall;
051    function Get_IndentLevel(Row: Integer; Col: Integer): Integer; safecall;
052    procedure Set_IndentLevel(Row: Integer; Col: Integer; Value: Integer); safecall;
053    function Get_Locked(Row: Integer; Col: Integer): WordBool; safecall;
054    procedure Set_Locked(Row: Integer; Col: Integer; Value: WordBool); safecall;
055    function Get_Pattern(Row: Integer; Col: Integer): XlPattern; safecall;
056    procedure Set_Pattern(Row: Integer; Col: Integer; Value: XlPattern); safecall;
057    function Get_Orientation(Row: Integer; Col: Integer): XlOrientation; safecall;
058    procedure Set_Orientation(Row: Integer; Col: Integer; Value: XlOrientation); safecall;
059    function Get_RightBorderStyle(Row: Integer; Col: Integer): XlLineStyle; safecall;
060    procedure Set_RightBorderStyle(Row: Integer; Col: Integer; Value: XlLineStyle); safecall;
061    function Get_RightBorderWidth(Row: Integer; Col: Integer): XlBorderWeight; safecall;
062    procedure Set_RightBorderWidth(Row: Integer; Col: Integer; 
063      Value: XlBorderWeight); safecall;
064    function Get_RightBorderColor(Row: Integer; Col: Integer): OLE_COLOR; safecall;
065    procedure Set_RightBorderColor(Row: Integer; Col: Integer; Value: OLE_COLOR); safecall;
066    function Get_BottomBorderStyle(Row: Integer; Col: Integer): XlLineStyle; safecall;
067    procedure Set_BottomBorderStyle(Row: Integer; Col: Integer; Value: XlLineStyle); safecall;
068    function Get_BottomBorderWidth(Row: Integer; Col: Integer): XlBorderWeight; safecall;
069    procedure Set_BottomBorderWidth(Row: Integer; Col: Integer; 
070      Value: XlBorderWeight); safecall;
071    function Get_BottomBorderColor(Row: Integer; Col: Integer): OLE_COLOR; safecall;
072    procedure Set_BottomBorderColor(Row: Integer; Col: Integer; Value: OLE_COLOR); safecall;
073    function Get_TopBorderStyle(Row: Integer; Col: Integer): XlLineStyle; safecall;
074    procedure Set_TopBorderStyle(Row: Integer; Col: Integer; Value: XlLineStyle); safecall;
075    function Get_TopBorderWidth(Row: Integer; Col: Integer): XlBorderWeight; safecall;
076    procedure Set_TopBorderWidth(Row: Integer; Col: Integer; Value: XlBorderWeight); safecall;
077    function Get_TopBorderColor(Row: Integer; Col: Integer): OLE_COLOR; safecall;
078    procedure Set_TopBorderColor(Row: Integer; Col: Integer; Value: OLE_COLOR); safecall;
079    function Get_LeftBorderStyle(Row: Integer; Col: Integer): XlLineStyle; safecall;
080    procedure Set_LeftBorderStyle(Row: Integer; Col: Integer; Value: XlLineStyle); safecall;
081    function Get_LeftBorderWidth(Row: Integer; Col: Integer): XlBorderWeight; safecall;
082    procedure Set_LeftBorderWidth(Row: Integer; Col: Integer; Value: XlBorderWeight); safecall;
083    function Get_LeftBorderColor(Row: Integer; Col: Integer): OLE_COLOR; safecall;
084    procedure Set_LeftBorderColor(Row: Integer; Col: Integer; Value: OLE_COLOR); safecall;
085    function Get_DiagonalBorderStyle(Row: Integer; Col: Integer): XlLineStyle; safecall;
086    procedure Set_DiagonalBorderStyle(Row: Integer; Col: Integer; 
087      Value: XlLineStyle); safecall;
088    function Get_DiagonalBorderWidth(Row: Integer; Col: Integer): XlBorderWeight; safecall;
089    procedure Set_DiagonalBorderWidth(Row: Integer; Col: Integer; 
090      Value: XlBorderWeight); safecall;
091    function Get_DiagonalBorderColor(Row: Integer; Col: Integer): OLE_COLOR; safecall;
092    procedure Set_DiagonalBorderColor(Row: Integer; Col: Integer; Value: OLE_COLOR); safecall;
093    function Get_DiagonalBorderUp(Row: Integer; Col: Integer): WordBool; safecall;
094    procedure Set_DiagonalBorderUp(Row: Integer; Col: Integer; Value: WordBool); safecall;
095    function Get_DiagonalBorderDown(Row: Integer; Col: Integer): WordBool; safecall;
096    procedure Set_DiagonalBorderDown(Row: Integer; Col: Integer; Value: WordBool); safecall;
097    function Get_HyperLink(Row: Integer; Col: Integer): WideString; safecall;
098    procedure Set_HyperLink(Row: Integer; Col: Integer; Value: WideString); safecall;
099    function Get_ColCount: Integer; safecall;
100    function Get_RowCount: Integer; safecall;
101    function Get_Width(Col: Integer): Single; safecall;
102    procedure Set_Width(Col: Integer; Value: Single); safecall;
103    function Get_ColWidth(Col: Integer): Single; safecall;
104    procedure Set_ColWidth(Col: Integer; Value: Single); safecall;
105    function Get_ColHasPageBreak(Col: Integer): WordBool; safecall;
106    procedure Set_ColHasPageBreak(Col: Integer; Value: WordBool); safecall;
107    function Get_Height(Row: Integer): Single; safecall;
108    procedure Set_Height(Row: Integer; Value: Single); safecall;
109    function Get_RowHeight(Row: Integer): Single; safecall;
110    procedure Set_RowHeight(Row: Integer; Value: Single); safecall;
111    function Get_RowHasPageBreak(Row: Integer): WordBool; safecall;
112    procedure Set_RowHasPageBreak(Row: Integer; Value: WordBool); safecall;
113    procedure InsertRow(ARow: Integer; RowCount: Integer); safecall;
114    procedure DeleteRow(ARow: Integer; RowCount: Integer); safecall;
115    procedure InsertCol(ACol: Integer; ColCount: Integer); safecall;
116    procedure DeleteCol(ACol: Integer; ColCount: Integer); safecall;
117    function GetMergeInfo(Row: Integer; Col: Integer; out Left: Integer; 
118      out Top: Integer; out Right: Integer; out Bottom: Integer): WordBool; safecall;
119    function TryMergeCells(Left: Integer; Top: Integer; Right: Integer; 
120      Bottom: Integer): WordBool; safecall;
121    procedure UnMergeCells(Left: Integer; Top: Integer; Right: Integer; 
122      Bottom: Integer); safecall;
123    function Get_SheetName: WideString; safecall;
124    procedure Set_SheetName(Value: WideString); safecall;
125    function Get_SheetVisible: XlSheetVisibility; safecall;
126    procedure Set_SheetVisible(Value: XlSheetVisibility); safecall;
127    function Get_SheetOrientation: XlPageOrientation; safecall;
128    procedure Set_SheetOrientation(Value: XlPageOrientation); safecall;
129    function Get_SheetPaperSize: XlPaperSize; safecall;
130    procedure Set_SheetPaperSize(Value: XlPaperSize); safecall;
131    function Get_SheetBlackAndWhite: WordBool; safecall;
132    procedure Set_SheetBlackAndWhite(Value: WordBool); safecall;
133    function Get_SheetZoom: Integer; safecall;
134    procedure Set_SheetZoom(Value: Integer); safecall;
135    function Get_SheetFitPage: WordBool; safecall;
136    procedure Set_SheetFitPage(Value: WordBool); safecall;
137    function Get_SheetFitPageWidth: Integer; safecall;
138    procedure Set_SheetFitPageWidth(Value: Integer); safecall;
139    function Get_SheetFitPageHeight: Integer; safecall;
140    procedure Set_SheetFitPageHeight(Value: Integer); safecall;
141    function Get_SheetLeftMargin: Single; safecall;
142    procedure Set_SheetLeftMargin(Value: Single); safecall;
143    function Get_SheetTopMargin: Single; safecall;
144    procedure Set_SheetTopMargin(Value: Single); safecall;
145    function Get_SheetRightMargin: Single; safecall;
146    procedure Set_SheetRightMargin(Value: Single); safecall;
147    function Get_SheetBottomMargin: Single; safecall;
148    procedure Set_SheetBottomMargin(Value: Single); safecall;
149    function Get_SheetHeaderMargin: Single; safecall;
150    procedure Set_SheetHeaderMargin(Value: Single); safecall;
151    function Get_SheetFooterMargin: Single; safecall;
152    procedure Set_SheetFooterMargin(Value: Single); safecall;
153    function Get_SheetHorizontalCenter: WordBool; safecall;
154    procedure Set_SheetHorizontalCenter(Value: WordBool); safecall;
155    function Get_SheetVerticalCenter: WordBool; safecall;
156    procedure Set_SheetVerticalCenter(Value: WordBool); safecall;
157    function Get_SheetHeaderFooterAlignWithMargins: WordBool; safecall;
158    procedure Set_SheetHeaderFooterAlignWithMargins(Value: WordBool); safecall;
159    function Get_SheetHeaderFooterScaleWithDoc: WordBool; safecall;
160    procedure Set_SheetHeaderFooterScaleWithDoc(Value: WordBool); safecall;
161    function Get_SheetHeaderFooterHasFirst: WordBool; safecall;
162    procedure Set_SheetHeaderFooterHasFirst(Value: WordBool); safecall;
163    function Get_SheetHeaderFooterHasEven: WordBool; safecall;
164    procedure Set_SheetHeaderFooterHasEven(Value: WordBool); safecall;
165    function Get_SheetHeaderFooter(Index: TSheetHeaderFooter): WideString; safecall;
166    procedure Set_SheetHeaderFooter(Index: TSheetHeaderFooter; Value: WideString); safecall;
167    function HasSheetHeaderFooterImage: WordBool; safecall;
168    procedure SetSheetHeaderFooterImage(Index: TSheetHeaderFooter; 
169      Image: TSheetHeaderFooterImage; Width: Single; Height: Single; Data: OleVariant); safecall;
170    function GetSheetHeaderFooterImage(Index: TSheetHeaderFooter; 
171      Image: TSheetHeaderFooterImage; out Width: Single; out Height: Single; 
172      out Data: OleVariant): WordBool; safecall;
173    function Get_FixedCols: Integer; safecall;
174    procedure Set_FixedCols(Value: Integer); safecall;
175    function Get_FixedRows: Integer; safecall;
176    procedure Set_FixedRows(Value: Integer); safecall;
177    function Get_Zoom: Integer; safecall;
178    procedure Set_Zoom(Value: Integer); safecall;
179    function Get_TabColor: OLE_COLOR; safecall;
180    procedure Set_TabColor(Value: OLE_COLOR); safecall;
181    function NamesCount: Integer; safecall;
182    function AddName(const Name: WideString; Left: Integer; Top: Integer; 
183      Right: Integer; Bottom: Integer; AdditionalTile: WordBool; 
184      Local: WordBool): Integer; safecall;
185    function FindName(const Name: WideString; out Index: Integer; 
186      out Local: WordBool): WordBool; safecall;
187    procedure GetNameInfo(Index: Integer; out TileCount: Integer; 
188      out Name: WideString; out Local: WordBool); safecall;
189    procedure GetNameTileInfo(Index: Integer; TileIndex: Integer; 
190      out Left: Integer; out Top: Integer; out Right: Integer; out Bottom: Integer); safecall;
191    procedure DeleteName(Index: Integer); safecall;
192    function FormatConditionsCount: Integer; safecall;
193    function AddFormatCondition(Left: Integer; Top: Integer; Right: Integer; 
194      Bottom: Integer; Priority: Integer; StopIfTrue: WordBool; 
195      FormatConditionType: XlFormatConditionType; 
196      FormatConditionOperator: XlFormatConditionOperator; Formula1Node: OleVariant; 
197      const Formula1Text: WideString; Formula2Node: OleVariant; 
198      const Formula2Text: WideString; Style: ISheetStyle): Integer; safecall;
199    procedure GetFormatConditionInfo(Index: Integer; out Left: Integer; 
200      out Top: Integer; out Right: Integer; out Bottom: Integer; 
201      out Priority: Integer; out StopIfTrue: WordBool; 
202      out FormatConditionType: XlFormatConditionType; 
203      out FormatConditionOperator: XlFormatConditionOperator; 
204      out Formula1Node: OleVariant; out Formula1Text: WideString; 
205      out Formula2Node: OleVariant; out Formula2Text: WideString; 
206      out Style: ISheetStyle); safecall;
207    procedure DeleteFormatCondition(Index: Integer); safecall;
208    procedure SortFormatConditions; safecall;
209    function ImagesCount: Integer; safecall;
210    function AddImage(Row: Integer; Col: Integer; Left: Single; Top: Single; 
211      Width: Single; Height: Single; Data: OleVariant): Integer; safecall;
212    procedure GetImageInfo(Index: Integer; Row: Integer; Col: Integer; 
213      out Left: Single; out Top: Single; out Width: Integer; out Height: Integer; 
214      out Data: OleVariant); safecall;
215    procedure DeleteImage(Index: Integer); safecall;
216    function Get_BackgroundImage: OleVariant; safecall;
217    procedure Set_BackgroundImage(Value: OleVariant); safecall;
218    procedure AutoFit(Left: Integer; Top: Integer; Right: Integer; Bottom: Integer); safecall;
219    procedure CropUsedRange; safecall;
220    procedure Calculate; safecall;
221    procedure ParseAllFormulas; safecall;
222    function Evaluate(FormulaNode: OleVariant; const FormulaText: WideString; 
223      Row: Integer; Col: Integer): OleVariant; safecall;
224    property Value[Row: Integer; Col: Integer]: OleVariant read Get_Value 
225      write Set_Value;
226    property FormulasDocument: OleVariant read Get_FormulasDocument;
227    property DefaultColWidth: Single read Get_DefaultColWidth 
228      write Set_DefaultColWidth;
229    property DefaultRowHeight: Single read Get_DefaultRowHeight 
230      write Set_DefaultRowHeight;
231    property DefaultFontName: WideString read Get_DefaultFontName 
232      write Set_DefaultFontName;
233    property DefaultFontSize: Single read Get_DefaultFontSize 
234      write Set_DefaultFontSize;
235    property Accessible[Row: Integer; Col: Integer]: WordBool read Get_Accessible;
236    property Text[Row: Integer; Col: Integer]: WideString read Get_Text;
237    property FormulaText[Row: Integer; Col: Integer]: WideString 
238      read Get_FormulaText write Set_FormulaText;
239    property FormulaNode[Row: Integer; Col: Integer]: OleVariant 
240      read Get_FormulaNode write Set_FormulaNode;
241    property HasFormula[Row: Integer; Col: Integer]: WordBool read Get_HasFormula;
242    property Comment[Row: Integer; Col: Integer]: WideString read Get_Comment 
243      write Set_Comment;
244    property NumberFormat[Row: Integer; Col: Integer]: WideString 
245      read Get_NumberFormat write Set_NumberFormat;
246    property FontName[Row: Integer; Col: Integer]: WideString read Get_FontName 
247      write Set_FontName;
248    property FontSize[Row: Integer; Col: Integer]: Single read Get_FontSize 
249      write Set_FontSize;
250    property Bold[Row: Integer; Col: Integer]: WordBool read Get_Bold write Set_Bold;
251    property Italic[Row: Integer; Col: Integer]: WordBool read Get_Italic 
252      write Set_Italic;
253    property Underline[Row: Integer; Col: Integer]: WordBool read Get_Underline 
254      write Set_Underline;
255    property FontColor[Row: Integer; Col: Integer]: OLE_COLOR read Get_FontColor 
256      write Set_FontColor;
257    property BackgroundColor[Row: Integer; Col: Integer]: OLE_COLOR 
258      read Get_BackgroundColor write Set_BackgroundColor;
259    property WrapText[Row: Integer; Col: Integer]: WordBool read Get_WrapText 
260      write Set_WrapText;
261    property HorizontalAlignment[Row: Integer; Col: Integer]: XlHAlign 
262      read Get_HorizontalAlignment write Set_HorizontalAlignment;
263    property VerticalAlignment[Row: Integer; Col: Integer]: XlHAlign 
264      read Get_VerticalAlignment write Set_VerticalAlignment;
265    property IndentLevel[Row: Integer; Col: Integer]: Integer read Get_IndentLevel 
266      write Set_IndentLevel;
267    property Locked[Row: Integer; Col: Integer]: WordBool read Get_Locked 
268      write Set_Locked;
269    property Pattern[Row: Integer; Col: Integer]: XlPattern read Get_Pattern 
270      write Set_Pattern;
271    property Orientation[Row: Integer; Col: Integer]: XlOrientation 
272      read Get_Orientation write Set_Orientation;
273    property RightBorderStyle[Row: Integer; Col: Integer]: XlLineStyle 
274      read Get_RightBorderStyle write Set_RightBorderStyle;
275    property RightBorderWidth[Row: Integer; Col: Integer]: XlBorderWeight 
276      read Get_RightBorderWidth write Set_RightBorderWidth;
277    property RightBorderColor[Row: Integer; Col: Integer]: OLE_COLOR 
278      read Get_RightBorderColor write Set_RightBorderColor;
279    property BottomBorderStyle[Row: Integer; Col: Integer]: XlLineStyle 
280      read Get_BottomBorderStyle write Set_BottomBorderStyle;
281    property BottomBorderWidth[Row: Integer; Col: Integer]: XlBorderWeight 
282      read Get_BottomBorderWidth write Set_BottomBorderWidth;
283    property BottomBorderColor[Row: Integer; Col: Integer]: OLE_COLOR 
284      read Get_BottomBorderColor write Set_BottomBorderColor;
285    property TopBorderStyle[Row: Integer; Col: Integer]: XlLineStyle 
286      read Get_TopBorderStyle write Set_TopBorderStyle;
287    property TopBorderWidth[Row: Integer; Col: Integer]: XlBorderWeight 
288      read Get_TopBorderWidth write Set_TopBorderWidth;
289    property TopBorderColor[Row: Integer; Col: Integer]: OLE_COLOR 
290      read Get_TopBorderColor write Set_TopBorderColor;
291    property LeftBorderStyle[Row: Integer; Col: Integer]: XlLineStyle 
292      read Get_LeftBorderStyle write Set_LeftBorderStyle;
293    property LeftBorderWidth[Row: Integer; Col: Integer]: XlBorderWeight 
294      read Get_LeftBorderWidth write Set_LeftBorderWidth;
295    property LeftBorderColor[Row: Integer; Col: Integer]: OLE_COLOR 
296      read Get_LeftBorderColor write Set_LeftBorderColor;
297    property DiagonalBorderStyle[Row: Integer; Col: Integer]: XlLineStyle 
298      read Get_DiagonalBorderStyle write Set_DiagonalBorderStyle;
299    property DiagonalBorderWidth[Row: Integer; Col: Integer]: XlBorderWeight 
300      read Get_DiagonalBorderWidth write Set_DiagonalBorderWidth;
301    property DiagonalBorderColor[Row: Integer; Col: Integer]: OLE_COLOR 
302      read Get_DiagonalBorderColor write Set_DiagonalBorderColor;
303    property DiagonalBorderUp[Row: Integer; Col: Integer]: WordBool 
304      read Get_DiagonalBorderUp write Set_DiagonalBorderUp;
305    property DiagonalBorderDown[Row: Integer; Col: Integer]: WordBool 
306      read Get_DiagonalBorderDown write Set_DiagonalBorderDown;
307    property HyperLink[Row: Integer; Col: Integer]: WideString read Get_HyperLink 
308      write Set_HyperLink;
309    property ColCount: Integer read Get_ColCount;
310    property RowCount: Integer read Get_RowCount;
311    property Width[Col: Integer]: Single read Get_Width write Set_Width;
312    property ColWidth[Col: Integer]: Single read Get_ColWidth write Set_ColWidth;
313    property ColHasPageBreak[Col: Integer]: WordBool read Get_ColHasPageBreak 
314      write Set_ColHasPageBreak;
315    property Height[Row: Integer]: Single read Get_Height write Set_Height;
316    property RowHeight[Row: Integer]: Single read Get_RowHeight write Set_RowHeight;
317    property RowHasPageBreak[Row: Integer]: WordBool read Get_RowHasPageBreak 
318      write Set_RowHasPageBreak;
319    property SheetName: WideString read Get_SheetName write Set_SheetName;
320    property SheetVisible: XlSheetVisibility read Get_SheetVisible 
321      write Set_SheetVisible;
322    property SheetOrientation: XlPageOrientation read Get_SheetOrientation 
323      write Set_SheetOrientation;
324    property SheetPaperSize: XlPaperSize read Get_SheetPaperSize 
325      write Set_SheetPaperSize;
326    property SheetBlackAndWhite: WordBool read Get_SheetBlackAndWhite 
327      write Set_SheetBlackAndWhite;
328    property SheetZoom: Integer read Get_SheetZoom write Set_SheetZoom;
329    property SheetFitPage: WordBool read Get_SheetFitPage write Set_SheetFitPage;
330    property SheetFitPageWidth: Integer read Get_SheetFitPageWidth 
331      write Set_SheetFitPageWidth;
332    property SheetFitPageHeight: Integer read Get_SheetFitPageHeight 
333      write Set_SheetFitPageHeight;
334    property SheetLeftMargin: Single read Get_SheetLeftMargin 
335      write Set_SheetLeftMargin;
336    property SheetTopMargin: Single read Get_SheetTopMargin write Set_SheetTopMargin;
337    property SheetRightMargin: Single read Get_SheetRightMargin 
338      write Set_SheetRightMargin;
339    property SheetBottomMargin: Single read Get_SheetBottomMargin 
340      write Set_SheetBottomMargin;
341    property SheetHeaderMargin: Single read Get_SheetHeaderMargin 
342      write Set_SheetHeaderMargin;
343    property SheetFooterMargin: Single read Get_SheetFooterMargin 
344      write Set_SheetFooterMargin;
345    property SheetHorizontalCenter: WordBool read Get_SheetHorizontalCenter 
346      write Set_SheetHorizontalCenter;
347    property SheetVerticalCenter: WordBool read Get_SheetVerticalCenter 
348      write Set_SheetVerticalCenter;
349    property SheetHeaderFooterAlignWithMargins: WordBool 
350      read Get_SheetHeaderFooterAlignWithMargins 
351      write Set_SheetHeaderFooterAlignWithMargins;
352    property SheetHeaderFooterScaleWithDoc: WordBool 
353      read Get_SheetHeaderFooterScaleWithDoc write Set_SheetHeaderFooterScaleWithDoc;
354    property SheetHeaderFooterHasFirst: WordBool read Get_SheetHeaderFooterHasFirst 
355      write Set_SheetHeaderFooterHasFirst;
356    property SheetHeaderFooterHasEven: WordBool read Get_SheetHeaderFooterHasEven 
357      write Set_SheetHeaderFooterHasEven;
358    property SheetHeaderFooter[Index: TSheetHeaderFooter]: WideString 
359      read Get_SheetHeaderFooter write Set_SheetHeaderFooter;
360    property FixedCols: Integer read Get_FixedCols write Set_FixedCols;
361    property FixedRows: Integer read Get_FixedRows write Set_FixedRows;
362    property Zoom: Integer read Get_Zoom write Set_Zoom;
363    property TabColor: OLE_COLOR read Get_TabColor write Set_TabColor;
364    property BackgroundImage: OleVariant read Get_BackgroundImage 
365      write Set_BackgroundImage;
366  end;

2.1.15.1. Свойства

Свойства интерфейса ISpreadSheet:

Имя Тип Доступ Назначение
Accessible[Row: Integer, Col: Integer] WordBool Только для чтения

BackgroundColor[Row: Integer, Col: Integer] OLE_COLOR Чтение/Запись

BackgroundImage OleVariant Чтение/Запись

Bold[Row: Integer, Col: Integer] WordBool Чтение/Запись

BottomBorderColor[Row: Integer, Col: Integer] OLE_COLOR Чтение/Запись

BottomBorderStyle[Row: Integer, Col: Integer]XlLineStyle Чтение/Запись

BottomBorderWidth[Row: Integer, Col: Integer]XlBorderWeight Чтение/Запись

ColCount Integer Только для чтения

ColHasPageBreak[Col: Integer] WordBool Чтение/Запись

ColWidth[Col: Integer] Single Чтение/Запись

Comment[Row: Integer, Col: Integer] WideString Чтение/Запись

DefaultColWidth Single Чтение/Запись

DefaultFontName WideString Чтение/Запись

DefaultFontSize Single Чтение/Запись

DefaultRowHeight Single Чтение/Запись

DiagonalBorderColor[Row: Integer, Col: Integer] OLE_COLOR Чтение/Запись

DiagonalBorderDown[Row: Integer, Col: Integer] WordBool Чтение/Запись

DiagonalBorderStyle[Row: Integer, Col: Integer]XlLineStyle Чтение/Запись

DiagonalBorderUp[Row: Integer, Col: Integer] WordBool Чтение/Запись

DiagonalBorderWidth[Row: Integer, Col: Integer]XlBorderWeight Чтение/Запись

FixedCols Integer Чтение/Запись

FixedRows Integer Чтение/Запись

FontColor[Row: Integer, Col: Integer] OLE_COLOR Чтение/Запись

FontName[Row: Integer, Col: Integer] WideString Чтение/Запись

FontSize[Row: Integer, Col: Integer] Single Чтение/Запись

FormulaNode[Row: Integer, Col: Integer] OleVariant Чтение/Запись

FormulaText[Row: Integer, Col: Integer] WideString Чтение/Запись

FormulasDocument OleVariant Только для чтения

HasFormula[Row: Integer, Col: Integer] WordBool Только для чтения

Height[Row: Integer] Single Чтение/Запись

HorizontalAlignment[Row: Integer, Col: Integer]XlHAlign Чтение/Запись

HyperLink[Row: Integer, Col: Integer] WideString Чтение/Запись

IndentLevel[Row: Integer, Col: Integer] Integer Чтение/Запись

Italic[Row: Integer, Col: Integer] WordBool Чтение/Запись

LeftBorderColor[Row: Integer, Col: Integer] OLE_COLOR Чтение/Запись

LeftBorderStyle[Row: Integer, Col: Integer]XlLineStyle Чтение/Запись

LeftBorderWidth[Row: Integer, Col: Integer]XlBorderWeight Чтение/Запись

Locked[Row: Integer, Col: Integer] WordBool Чтение/Запись

NumberFormat[Row: Integer, Col: Integer] WideString Чтение/Запись

Orientation[Row: Integer, Col: Integer]XlOrientation Чтение/Запись

Pattern[Row: Integer, Col: Integer]XlPattern Чтение/Запись

RightBorderColor[Row: Integer, Col: Integer] OLE_COLOR Чтение/Запись

RightBorderStyle[Row: Integer, Col: Integer]XlLineStyle Чтение/Запись

RightBorderWidth[Row: Integer, Col: Integer]XlBorderWeight Чтение/Запись

RowCount Integer Только для чтения

RowHasPageBreak[Row: Integer] WordBool Чтение/Запись

RowHeight[Row: Integer] Single Чтение/Запись

SheetBlackAndWhite WordBool Чтение/Запись

SheetBottomMargin Single Чтение/Запись

SheetFitPage WordBool Чтение/Запись

SheetFitPageHeight Integer Чтение/Запись

SheetFitPageWidth Integer Чтение/Запись

SheetFooterMargin Single Чтение/Запись

SheetHeaderFooter[Index: TSheetHeaderFooter] WideString Чтение/Запись

SheetHeaderFooterAlignWithMargins WordBool Чтение/Запись

SheetHeaderFooterHasEven WordBool Чтение/Запись

SheetHeaderFooterHasFirst WordBool Чтение/Запись

SheetHeaderFooterScaleWithDoc WordBool Чтение/Запись

SheetHeaderMargin Single Чтение/Запись

SheetHorizontalCenter WordBool Чтение/Запись

SheetLeftMargin Single Чтение/Запись

SheetName WideString Чтение/Запись

SheetOrientationXlPageOrientation Чтение/Запись

SheetPaperSizeXlPaperSize Чтение/Запись

SheetRightMargin Single Чтение/Запись

SheetTopMargin Single Чтение/Запись

SheetVerticalCenter WordBool Чтение/Запись

SheetVisibleXlSheetVisibility Чтение/Запись

SheetZoom Integer Чтение/Запись

TabColor OLE_COLOR Чтение/Запись

Text[Row: Integer, Col: Integer] WideString Только для чтения

TopBorderColor[Row: Integer, Col: Integer] OLE_COLOR Чтение/Запись

TopBorderStyle[Row: Integer, Col: Integer]XlLineStyle Чтение/Запись

TopBorderWidth[Row: Integer, Col: Integer]XlBorderWeight Чтение/Запись

Underline[Row: Integer, Col: Integer] WordBool Чтение/Запись

Value[Row: Integer, Col: Integer] OleVariant Чтение/Запись

VerticalAlignment[Row: Integer, Col: Integer]XlHAlign Чтение/Запись

Width[Col: Integer] Single Чтение/Запись

WrapText[Row: Integer, Col: Integer] WordBool Чтение/Запись

Zoom Integer Чтение/Запись


2.1.15.2. Метод AddFormatCondition

Метод интерфейса ISpreadSheet.

1function ISpreadSheet.AddFormatCondition(Left: Integer; Top: Integer; 
2  Right: Integer; Bottom: Integer; Priority: Integer; StopIfTrue: WordBool; 
3  FormatConditionType: XlFormatConditionType; 
4  FormatConditionOperator: XlFormatConditionOperator; Formula1Node: OleVariant; 
5  const Formula1Text: WideString; Formula2Node: OleVariant; 
6  const Formula2Text: WideString; Style: ISheetStyle): Integer;

Параметры:

Имя Тип Обязательно Значение
Left Integer Да

Top Integer Да

Right Integer Да

Bottom Integer Да

Priority Integer Да

StopIfTrue WordBool Да

FormatConditionTypeXlFormatConditionType Да

FormatConditionOperatorXlFormatConditionOperator Да

Formula1Node OleVariant Да

Formula1Text WideString Да

Formula2Node OleVariant Да

Formula2Text WideString Да

StyleISheetStyle Да

Замечания:

Возвращает значение типа Integer.


2.1.15.3. Метод AddImage

Метод интерфейса ISpreadSheet.

1function ISpreadSheet.AddImage(Row: Integer; Col: Integer; Left: Single; 
2  Top: Single; Width: Single; Height: Single; Data: OleVariant): Integer;

Параметры:

Имя Тип Обязательно Значение
Row Integer Да

Col Integer Да

Left Single Да

Top Single Да

Width Single Да

Height Single Да

Data OleVariant Да

Замечания:

Возвращает значение типа Integer.


2.1.15.4. Метод AddName

Метод интерфейса ISpreadSheet.

1function ISpreadSheet.AddName(const Name: WideString; Left: Integer; 
2  Top: Integer; Right: Integer; Bottom: Integer; AdditionalTile: WordBool; 
3  Local: WordBool): Integer;

Параметры:

Имя Тип Обязательно Значение
Name WideString Да

Left Integer Да

Top Integer Да

Right Integer Да

Bottom Integer Да

AdditionalTile WordBool Да

Local WordBool Да

Замечания:

Возвращает значение типа Integer.


2.1.15.5. Метод AutoFit

Метод интерфейса ISpreadSheet.

1procedure ISpreadSheet.AutoFit(Left: Integer; Top: Integer; Right: Integer; 
2  Bottom: Integer);

Параметры:

Имя Тип Обязательно Значение
Left Integer Да

Top Integer Да

Right Integer Да

Bottom Integer Да


2.1.15.6. Метод Calculate

Метод интерфейса ISpreadSheet.

procedure ISpreadSheet.Calculate;

Метод не имеет параметров.


2.1.15.7. Метод CropUsedRange

Метод интерфейса ISpreadSheet.

procedure ISpreadSheet.CropUsedRange;

Метод не имеет параметров.


2.1.15.8. Метод DeleteCol

Метод интерфейса ISpreadSheet.

procedure ISpreadSheet.DeleteCol(ACol: Integer; ColCount: Integer);

Параметры:

Имя Тип Обязательно Значение
ACol Integer Да

ColCount Integer Да


2.1.15.9. Метод DeleteFormatCondition

Метод интерфейса ISpreadSheet.

procedure ISpreadSheet.DeleteFormatCondition(Index: Integer);

Параметры:

Имя Тип Обязательно Значение
Index Integer Да


2.1.15.10. Метод DeleteImage

Метод интерфейса ISpreadSheet.

procedure ISpreadSheet.DeleteImage(Index: Integer);

Параметры:

Имя Тип Обязательно Значение
Index Integer Да


2.1.15.11. Метод DeleteName

Метод интерфейса ISpreadSheet.

procedure ISpreadSheet.DeleteName(Index: Integer);

Параметры:

Имя Тип Обязательно Значение
Index Integer Да


2.1.15.12. Метод DeleteRow

Метод интерфейса ISpreadSheet.

procedure ISpreadSheet.DeleteRow(ARow: Integer; RowCount: Integer);

Параметры:

Имя Тип Обязательно Значение
ARow Integer Да

RowCount Integer Да


2.1.15.13. Метод Evaluate

Метод интерфейса ISpreadSheet.

1function ISpreadSheet.Evaluate(FormulaNode: OleVariant; 
2  const FormulaText: WideString; Row: Integer; Col: Integer): OleVariant;

Параметры:

Имя Тип Обязательно Значение
FormulaNode OleVariant Да

FormulaText WideString Да

Row Integer Да

Col Integer Да

Замечания:

Возвращает значение типа OleVariant.


2.1.15.14. Метод FindName

Метод интерфейса ISpreadSheet.

1function ISpreadSheet.FindName(const Name: WideString; out Index: Integer; 
2  out Local: WordBool): WordBool;

Параметры:

Имя Тип Обязательно Значение
Name WideString Да

Index Integer Да

Local WordBool Да

Замечания:

Возвращает значение типа WordBool.


2.1.15.15. Метод FormatConditionsCount

Метод интерфейса ISpreadSheet.

function ISpreadSheet.FormatConditionsCount: Integer;

Метод не имеет параметров.

Замечания:

Возвращает значение типа Integer.


2.1.15.16. Метод GetFormatConditionInfo

Метод интерфейса ISpreadSheet.

1procedure ISpreadSheet.GetFormatConditionInfo(Index: Integer; 
2  out Left: Integer; out Top: Integer; out Right: Integer; out Bottom: Integer; 
3  out Priority: Integer; out StopIfTrue: WordBool; 
4  out FormatConditionType: XlFormatConditionType; 
5  out FormatConditionOperator: XlFormatConditionOperator; 
6  out Formula1Node: OleVariant; out Formula1Text: WideString; 
7  out Formula2Node: OleVariant; out Formula2Text: WideString; 
8  out Style: ISheetStyle);

Параметры:

Имя Тип Обязательно Значение
Index Integer Да

Left Integer Да

Top Integer Да

Right Integer Да

Bottom Integer Да

Priority Integer Да

StopIfTrue WordBool Да

FormatConditionTypeXlFormatConditionType Да

FormatConditionOperatorXlFormatConditionOperator Да

Formula1Node OleVariant Да

Formula1Text WideString Да

Formula2Node OleVariant Да

Formula2Text WideString Да

StyleISheetStyle Да


2.1.15.17. Метод GetImageInfo

Метод интерфейса ISpreadSheet.

1procedure ISpreadSheet.GetImageInfo(Index: Integer; Row: Integer; Col: Integer; 
2  out Left: Single; out Top: Single; out Width: Integer; out Height: Integer; 
3  out Data: OleVariant);

Параметры:

Имя Тип Обязательно Значение
Index Integer Да

Row Integer Да

Col Integer Да

Left Single Да

Top Single Да

Width Integer Да

Height Integer Да

Data OleVariant Да


2.1.15.18. Метод GetMergeInfo

Метод интерфейса ISpreadSheet.

1function ISpreadSheet.GetMergeInfo(Row: Integer; Col: Integer; 
2  out Left: Integer; out Top: Integer; out Right: Integer; 
3  out Bottom: Integer): WordBool;

Параметры:

Имя Тип Обязательно Значение
Row Integer Да

Col Integer Да

Left Integer Да

Top Integer Да

Right Integer Да

Bottom Integer Да

Замечания:

Возвращает значение типа WordBool.


2.1.15.19. Метод GetNameInfo

Метод интерфейса ISpreadSheet.

1procedure ISpreadSheet.GetNameInfo(Index: Integer; out TileCount: Integer; 
2  out Name: WideString; out Local: WordBool);

Параметры:

Имя Тип Обязательно Значение
Index Integer Да

TileCount Integer Да

Name WideString Да

Local WordBool Да


2.1.15.20. Метод GetNameTileInfo

Метод интерфейса ISpreadSheet.

1procedure ISpreadSheet.GetNameTileInfo(Index: Integer; TileIndex: Integer; 
2  out Left: Integer; out Top: Integer; out Right: Integer; out Bottom: Integer);

Параметры:

Имя Тип Обязательно Значение
Index Integer Да

TileIndex Integer Да

Left Integer Да

Top Integer Да

Right Integer Да

Bottom Integer Да


2.1.15.21. Метод GetSheetHeaderFooterImage

Метод интерфейса ISpreadSheet.

1function ISpreadSheet.GetSheetHeaderFooterImage(Index: TSheetHeaderFooter; 
2  Image: TSheetHeaderFooterImage; out Width: Single; out Height: Single; 
3  out Data: OleVariant): WordBool;

Параметры:

Имя Тип Обязательно Значение
IndexTSheetHeaderFooter Да

ImageTSheetHeaderFooterImage Да

Width Single Да

Height Single Да

Data OleVariant Да

Замечания:

Возвращает значение типа WordBool.


2.1.15.22. Метод HasSheetHeaderFooterImage

Метод интерфейса ISpreadSheet.

function ISpreadSheet.HasSheetHeaderFooterImage: WordBool;

Метод не имеет параметров.

Замечания:

Возвращает значение типа WordBool.


2.1.15.23. Метод ImagesCount

Метод интерфейса ISpreadSheet.

function ISpreadSheet.ImagesCount: Integer;

Метод не имеет параметров.

Замечания:

Возвращает значение типа Integer.


2.1.15.24. Метод InsertCol

Метод интерфейса ISpreadSheet.

procedure ISpreadSheet.InsertCol(ACol: Integer; ColCount: Integer);

Параметры:

Имя Тип Обязательно Значение
ACol Integer Да

ColCount Integer Да


2.1.15.25. Метод InsertRow

Метод интерфейса ISpreadSheet.

procedure ISpreadSheet.InsertRow(ARow: Integer; RowCount: Integer);

Параметры:

Имя Тип Обязательно Значение
ARow Integer Да

RowCount Integer Да


2.1.15.26. Метод NamesCount

Метод интерфейса ISpreadSheet.

function ISpreadSheet.NamesCount: Integer;

Метод не имеет параметров.

Замечания:

Возвращает значение типа Integer.


2.1.15.27. Метод ParseAllFormulas

Метод интерфейса ISpreadSheet.

procedure ISpreadSheet.ParseAllFormulas;

Метод не имеет параметров.


2.1.15.28. Метод SetSheetHeaderFooterImage

Метод интерфейса ISpreadSheet.

1procedure ISpreadSheet.SetSheetHeaderFooterImage(Index: TSheetHeaderFooter; 
2  Image: TSheetHeaderFooterImage; Width: Single; Height: Single; Data: OleVariant);

Параметры:

Имя Тип Обязательно Значение
IndexTSheetHeaderFooter Да

ImageTSheetHeaderFooterImage Да

Width Single Да

Height Single Да

Data OleVariant Да


2.1.15.29. Метод SortFormatConditions

Метод интерфейса ISpreadSheet.

procedure ISpreadSheet.SortFormatConditions;

Метод не имеет параметров.


2.1.15.30. Метод Touch

Метод интерфейса ISpreadSheet.

procedure ISpreadSheet.Touch(Row: Integer; Col: Integer; Used: WordBool);

Параметры:

Имя Тип Обязательно Значение
Row Integer Да

Col Integer Да

Used WordBool Да


2.1.15.31. Метод TryCopyCells

Метод интерфейса ISpreadSheet.

1function ISpreadSheet.TryCopyCells(SourceLeft: Integer; SourceTop: Integer; 
2  SourceRight: Integer; SourceBottom: Integer; DestinationLeft: Integer; 
3  DestinationTop: Integer; DestinationRight: Integer; 
4  DestinationBottom: Integer): WordBool;

Параметры:

Имя Тип Обязательно Значение
SourceLeft Integer Да

SourceTop Integer Да

SourceRight Integer Да

SourceBottom Integer Да

DestinationLeft Integer Да

DestinationTop Integer Да

DestinationRight Integer Да

DestinationBottom Integer Да

Замечания:

Возвращает значение типа WordBool.


2.1.15.32. Метод TryMergeCells

Метод интерфейса ISpreadSheet.

1function ISpreadSheet.TryMergeCells(Left: Integer; Top: Integer; 
2  Right: Integer; Bottom: Integer): WordBool;

Параметры:

Имя Тип Обязательно Значение
Left Integer Да

Top Integer Да

Right Integer Да

Bottom Integer Да

Замечания:

Возвращает значение типа WordBool.


2.1.15.33. Метод UnMergeCells

Метод интерфейса ISpreadSheet.

1procedure ISpreadSheet.UnMergeCells(Left: Integer; Top: Integer; 
2  Right: Integer; Bottom: Integer);

Параметры:

Имя Тип Обязательно Значение
Left Integer Да

Top Integer Да

Right Integer Да

Bottom Integer Да


2.1.16. Интерфейс IWorkBook

Диаграмма

01type
02  IWorkBook = interface(IDispatch)
03    ['{A645DB60-CE9A-45E3-A948-B668AB210D36}']
04    function Get_WorkSheetNameTemplate: WideString; safecall;
05    procedure Set_WorkSheetNameTemplate(Value: WideString); safecall;
06    function AddWorkSheet(Sample: ISpreadSheet): ISpreadSheet; safecall;
07    procedure RemoveWorkSheet(WorkSheet: ISpreadSheet); safecall;
08    function SheetIndex(Sheet: ISpreadSheet): Integer; safecall;
09    procedure SetSheetIndex(Sheet: ISpreadSheet; Index: Integer); safecall;
10    function Get_WorkSheetCount: Integer; safecall;
11    function WorkSheets(Index: Integer): ISpreadSheet; safecall;
12    function Get_FileName: WideString; safecall;
13    procedure Set_FileName(Value: WideString); safecall;
14    function Get_ActiveSheet: ISpreadSheet; safecall;
15    procedure Set_ActiveSheet(Value: ISpreadSheet); safecall;
16    function Get_DefaultFontName: WideString; safecall;
17    procedure Set_DefaultFontName(Value: WideString); safecall;
18    function Get_DefaultFontSize: Single; safecall;
19    procedure Set_DefaultFontSize(Value: Single); safecall;
20    function Get_MacroEnabled: WordBool; safecall;
21    procedure Set_MacroEnabled(Value: WordBool); safecall;
22    function Get_IsTemplate: WordBool; safecall;
23    procedure Set_IsTemplate(Value: WordBool); safecall;
24    property WorkSheetNameTemplate: WideString read Get_WorkSheetNameTemplate 
25      write Set_WorkSheetNameTemplate;
26    property WorkSheetCount: Integer read Get_WorkSheetCount;
27    property FileName: WideString read Get_FileName write Set_FileName;
28    property ActiveSheet: ISpreadSheet read Get_ActiveSheet write Set_ActiveSheet;
29    property DefaultFontName: WideString read Get_DefaultFontName 
30      write Set_DefaultFontName;
31    property DefaultFontSize: Single read Get_DefaultFontSize 
32      write Set_DefaultFontSize;
33    property MacroEnabled: WordBool read Get_MacroEnabled write Set_MacroEnabled;
34    property IsTemplate: WordBool read Get_IsTemplate write Set_IsTemplate;
35  end;

2.1.16.1. Свойства

Свойства интерфейса IWorkBook:

Имя Тип Доступ Назначение
ActiveSheetISpreadSheet Чтение/Запись

DefaultFontName WideString Чтение/Запись

DefaultFontSize Single Чтение/Запись

FileName WideString Чтение/Запись

IsTemplate WordBool Чтение/Запись

MacroEnabled WordBool Чтение/Запись

WorkSheetCount Integer Только для чтения

WorkSheetNameTemplate WideString Чтение/Запись


2.1.16.2. Метод AddWorkSheet

Метод интерфейса IWorkBook.

function IWorkBook.AddWorkSheet(Sample: ISpreadSheet): ISpreadSheet;

Параметры:

Имя Тип Обязательно Значение
SampleISpreadSheet Да

Замечания:

Возвращает значение типа ISpreadSheet.


2.1.16.3. Метод RemoveWorkSheet

Метод интерфейса IWorkBook.

procedure IWorkBook.RemoveWorkSheet(WorkSheet: ISpreadSheet);

Параметры:

Имя Тип Обязательно Значение
WorkSheetISpreadSheet Да


2.1.16.4. Метод SetSheetIndex

Метод интерфейса IWorkBook.

procedure IWorkBook.SetSheetIndex(Sheet: ISpreadSheet; Index: Integer);

Параметры:

Имя Тип Обязательно Значение
SheetISpreadSheet Да

Index Integer Да


2.1.16.5. Метод SheetIndex

Метод интерфейса IWorkBook.

function IWorkBook.SheetIndex(Sheet: ISpreadSheet): Integer;

Параметры:

Имя Тип Обязательно Значение
SheetISpreadSheet Да

Замечания:

Возвращает значение типа Integer.


2.1.16.6. Метод WorkSheets

Метод интерфейса IWorkBook.

function IWorkBook.WorkSheets(Index: Integer): ISpreadSheet;

Параметры:

Имя Тип Обязательно Значение
Index Integer Да

Замечания:

Возвращает значение типа ISpreadSheet.


2.1.17. Интерфейс IWorkBooks

Диаграмма

01type
02  IWorkBooks = interface(IDispatch)
03    ['{0ED2C94A-2D25-4AC1-86FB-F69A6A034547}']
04    function AddWorkBook(WorkBook: IWorkBook): IWorkBook; safecall;
05    procedure RemoveWorkBook(WorkBook: IWorkBook); safecall;
06    function Get_WorkBookCount: Integer; safecall;
07    function Get_WorkBooks(Index: Integer): IWorkBook; safecall;
08    function Get_ActiveBook: IWorkBook; safecall;
09    procedure Set_ActiveBook(Value: IWorkBook); safecall;
10    procedure CreateStyle(ApplyNumberFormat: WordBool; 
11      const NumberFormat: WideString; ApplyFont: WordBool; Bold: WordBool; 
12      Italic: WordBool; Underline: WordBool; FontColor: OLE_COLOR; 
13      ApplyFill: WordBool; BackgroundColor: OLE_COLOR; Pattern: XlPattern; 
14      ApplyBorder: WordBool; LeftBorderStyle: XlLineStyle; 
15      LeftBorderWidth: XlBorderWeight; LeftBorderColor: OLE_COLOR; 
16      TopBorderStyle: XlLineStyle; TopBorderWidth: XlBorderWeight; 
17      TopBorderColor: OLE_COLOR; RightBorderStyle: XlLineStyle; 
18      RightBorderWidth: XlBorderWeight; RightBorderColor: OLE_COLOR; 
19      BottomBorderStyle: XlLineStyle; BottomBorderWidth: XlBorderWeight; 
20      BottomBorderColor: OLE_COLOR; DiagonalBorderStyle: XlLineStyle; 
21      DiagonalBorderWidth: XlBorderWeight; DiagonalBorderColor: OLE_COLOR; 
22      DiagonalBorderUp: WordBool; DiagonalBorderDown: WordBool); safecall;
23    property WorkBookCount: Integer read Get_WorkBookCount;
24    property WorkBooks[Index: Integer]: IWorkBook read Get_WorkBooks;
25    property ActiveBook: IWorkBook read Get_ActiveBook write Set_ActiveBook;
26  end;

2.1.17.1. Свойства

Свойства интерфейса IWorkBooks:

Имя Тип Доступ Назначение
ActiveBookIWorkBook Чтение/Запись

WorkBookCount Integer Только для чтения

WorkBooks[Index: Integer]IWorkBook Только для чтения


2.1.17.2. Метод AddWorkBook

Метод интерфейса IWorkBooks.

function IWorkBooks.AddWorkBook(WorkBook: IWorkBook): IWorkBook;

Параметры:

Имя Тип Обязательно Значение
WorkBookIWorkBook Да

Замечания:

Возвращает значение типа IWorkBook.


2.1.17.3. Метод CreateStyle

Метод интерфейса IWorkBooks.

01procedure IWorkBooks.CreateStyle(ApplyNumberFormat: WordBool; 
02  const NumberFormat: WideString; ApplyFont: WordBool; Bold: WordBool; 
03  Italic: WordBool; Underline: WordBool; FontColor: OLE_COLOR; 
04  ApplyFill: WordBool; BackgroundColor: OLE_COLOR; Pattern: XlPattern; 
05  ApplyBorder: WordBool; LeftBorderStyle: XlLineStyle; 
06  LeftBorderWidth: XlBorderWeight; LeftBorderColor: OLE_COLOR; 
07  TopBorderStyle: XlLineStyle; TopBorderWidth: XlBorderWeight; 
08  TopBorderColor: OLE_COLOR; RightBorderStyle: XlLineStyle; 
09  RightBorderWidth: XlBorderWeight; RightBorderColor: OLE_COLOR; 
10  BottomBorderStyle: XlLineStyle; BottomBorderWidth: XlBorderWeight; 
11  BottomBorderColor: OLE_COLOR; DiagonalBorderStyle: XlLineStyle; 
12  DiagonalBorderWidth: XlBorderWeight; DiagonalBorderColor: OLE_COLOR; 
13  DiagonalBorderUp: WordBool; DiagonalBorderDown: WordBool);

Параметры:

Имя Тип Обязательно Значение
ApplyNumberFormat WordBool Да

NumberFormat WideString Да

ApplyFont WordBool Да

Bold WordBool Да

Italic WordBool Да

Underline WordBool Да

FontColor OLE_COLOR Да

ApplyFill WordBool Да

BackgroundColor OLE_COLOR Да

PatternXlPattern Да

ApplyBorder WordBool Да

LeftBorderStyleXlLineStyle Да

LeftBorderWidthXlBorderWeight Да

LeftBorderColor OLE_COLOR Да

TopBorderStyleXlLineStyle Да

TopBorderWidthXlBorderWeight Да

TopBorderColor OLE_COLOR Да

RightBorderStyleXlLineStyle Да

RightBorderWidthXlBorderWeight Да

RightBorderColor OLE_COLOR Да

BottomBorderStyleXlLineStyle Да

BottomBorderWidthXlBorderWeight Да

BottomBorderColor OLE_COLOR Да

DiagonalBorderStyleXlLineStyle Да

DiagonalBorderWidthXlBorderWeight Да

DiagonalBorderColor OLE_COLOR Да

DiagonalBorderUp WordBool Да

DiagonalBorderDown WordBool Да


2.1.17.4. Метод RemoveWorkBook

Метод интерфейса IWorkBooks.

procedure IWorkBooks.RemoveWorkBook(WorkBook: IWorkBook);

Параметры:

Имя Тип Обязательно Значение
WorkBookIWorkBook Да