Пример создания табличного отчета в Excel
Рассмотрим небольшой пример. Передадим в Excel сведения, содержащиеся в таблице Сотрудники базы данных sales (в формате Access). Чтобы не усложнять пример, будем полагать, что в отчет требуется вывести всю информацию, содержащуюся в таблице.
1. Поместите на форму любой компонент доступа к данным (Table, Query, ADOTable или ADOQuery) и подключите его к требуемой таблице.
Для баз данных Access лучше использовать компоненты, работающие с базой данных с применением технологии ADO. А поскольку мы хотим выводить в Excel отчеты, то желательно задействовать компоненты, взаимодействующие с базой данных посредством SQL-запросов. Поэтому в нашем случае оптимальным выбором будет компонент ADOQuery.
2. Так как мы собираемся импортировать в Excel всю информацию из этой таблицы, то напишите такой запрос на выборку:
select * from Сотрудники
3.
Поместите на форму кнопку (Button) и задайте для нее обработчик события OnClick, представленный в листинге 17.2.Листинг 17.2. Обработчик события OnClick кнопки
procedure TForml.ButtonlClick(Sender: TObject): const
// Массив, который будет использоваться для задания
11 имен ячеек при занесении в них данных CellName : array[0..11] of char = ('A','В',
'C’.'D'.'E'.'F'.'G'.'H'.T.'J'.'K'.'L'):
var
index : OleVariant;
Cl. V : OleVariant: i. j : Integer: begin
// Подключаемся к серверу автоматизации MS Excel ExcelAppli cati onl.Connect;
// Создаем новую рабочую книгу и делаем ее видимой Excel Applicationl.Workbooks.Add(EmptyParam.0):
ExcelApplicationl.Vi sible[0]:=true:
ExcelWorkbookl.ConnectTo(
ExcelApplicationl.ActiveWorkbook); index:=l:
ExcelWorksheetl.ConnectTo(
Excel Workbookl.Worksheets.Item[index] as _Worksheet):
ExcelWorksheetl.Activate(0):
// Открываем набор данных ADOQueryl.Open:
// Переносим данные в рабочий лист Excel try
for i:=l to ADOQueryl.RecordCount do begin ADOQueryl.RecNo:=i:
for j:=0 to pred(ADOQueryl.FieldCount) do begin Cl:=CellName[j]+IntToStr(i):
V:=ADOQueryl.Fi elds[j].Value:
Excel Worksheet1.Range[Cl.Cl],Value:=V: end: end: final ly
// Закрываем набор данных ADOQueryl.Close: end; end:
Еще по теме Пример создания табличного отчета в Excel:
- Табличные вопросы
- Глава 5. ТАБЛИЧНОЕ И ГРАФИЧЕСКОЕ ПРЕДСТАВЛЕНИЕ ДАННЫХ1
- 5.1. Табличное представление данных
- Примеры жестокости по отношению к другим (эти примеры более всего относятся к семейной жизни):
- Отчет
- Статья 1022. Отчет комиссионера
- ОТЧЕТ СУБЪЕКТИВНЫЙ
- 38. Отчет внешнего управляющего
- ОТЧЕТ РЕЧЕВОЙ
- 3.4. Научный отчет
- ИНФОРМАЦИОННЫЙ ОТЧЕТ
- 2. АНАЛИТИЧЕСКИЙ ОТЧЕТ
- Отчет читателя