курсовые,контрольные,дипломы,рефераты
Наша задача создать отчётность в Excel. Эта потребность может возникнуть у каждого программиста баз данных, ведь Office установлен в нашей стране практически на каждом компьютере. А это значит, что вашу отчётность можно смело переносить между компьютерами и быть уверенным, что её смогут прочитать.
Сначала я покажу полностью процедуру, потому что исходников в конце статьи не будет, а потом мы разберём её по косточкам:
procedure TForm1.Button1Click(Sender: TObject);
var
XLApp,Sheet,Colum:Variant;
index,i:Integer;
begin
XLApp:= CreateOleObject('Excel.Application');
XLApp.Visible:=true;
XLApp.Workbooks.Add(-4167);
XLApp.Workbooks[1].WorkSheets[1].Name:='Отчёт';
Colum:=XLApp.Workbooks[1].WorkSheets['Отчёт'].Columns;
Colum.Columns[1].ColumnWidth:=40;
Colum.Columns[2].ColumnWidth:=10;
Colum.Columns[3].ColumnWidth:=30;
Colum.Columns[4].ColumnWidth:=10;
Colum:=XLApp.Workbooks[1].WorkSheets['Отчёт'].Rows;
Colum.Rows[2].Font.Bold:=true;
Colum.Rows[1].Font.Bold:=true;
Colum.Rows[1].Font.Color:=clBlue;
Colum.Rows[1].Font.Size:=14;
Sheet:=XLApp.Workbooks[1].WorkSheets['Отчёт'];
Sheet.Cells[1,2]:='Отчёт из Delphi';
Sheet.Cells[2,1]:='Колонка 1';
Sheet.Cells[2,2]:='Колонка 2';
Sheet.Cells[2,3]:='Колонка 3';
Sheet.Cells[2,4]:='Колонка 4';
index:=3;
for i:=0 to 2 do
begin
Sheet.Rows[index].Font.Color:=clGreen;
Sheet.Cells[index,1]:=random(100);
Sheet.Cells[index,2]:=random(100);
Sheet.Cells[index,3]:=random(100);
Sheet.Cells[index,4].Font.Color:=clRed;
Sheet.Cells[index,4]:=random(100);
Inc(index);
end;
end;
Для того, чтобы всё это работало, нужно подключить в раздел Uses модуль ComObj . А теперь начнём всё с самого начала.
Первая строка создаёт объект Excel (XLApp:= CreateOleObject('Excel.Application')), и записывает его в переменную XLApp . Эта переменная типа Variant . Variant - это тип, который может принимать любые значения: строки, числа, указатели и др. Вторая строка (XLApp.Visible:=true) заставляет запустить сам Excel. Потом я добавляю новую рабочую книгу (XLApp.Workbooks.Add(-4167)). Число в скобках - это константа, которая означает создание книги и её изменять нельзя. Дальше я даю название созданной книге XLApp.Workbooks[1].WorkSheets[1].Name:='Отчёт'. Это действие не обязательно, но я всегда это делаю, потому что меня бесит название по умолчанию "Лист 1".
Теперь у нас Excel запущен и создана новая книга. Можно переходить к впечатыванию данных. Но прежде чем это сделать я отформатирую колонки и строки. Для этого я получаю указатель на колонки рабочей книги (Colum:= XLApp. Workbooks[1]. WorkSheets['Отчёт']. Columns), и записываю результат в переменную Colum типа Variant . Теперь последовательно изменяю ширину колонок (Colum. Columns[1]. ColumnWidth := 40). На русском эта команда будет звучать так: Колонки. Колонка[1]. ШиринаКолонки:=40.
После этого я в ту же переменную записываю указатель на строки рабочей книги (Colum := XLApp. Workbooks[1]. WorkSheets['Отчёт']. Rows). Для украшения строк нашего отчёта, я устанавливаю у первых двух строк жирный шрифт (Colum. Rows[1]. Font. Bold := true). В квадратных скобках теперь порядковый номер строки. Далее идут две строки, в которых я устанавливаю цвет первой строки в синий и размер шрифта равный 14.
Форматирование окончено, теперь можно выводить данные. Для этого я получаю указатель на лист (Sheet:=XLApp.Workbooks[1].WorkSheets['Отчёт']). Для того, чтобы вывести данные, нужно просто присвоить значение в Sheet.Cells[строка, колонки]. В процессе вывода данных можно изменять цвет строк Sheet. Rows[строка]. Font. Color или колонок Sheet. Columns[колонка]. Font. Color, простым присваиванием (как мы это делали при форматировании). Если нужно изменить цвет отдельной ячейки, то это можно сделать, присвоив новое значение в Sheet.Cells[строка, колонка].Font.Color.
Вот ещё некоторые параметры, которые ты можешь изменить:
Sheet.Cells[строка,колонка].Font.Italic - курсивный шрифт
Sheet.Cells[строка,колонка].Font.Bold - жирный шрифт
Sheet.Cells[строка,колонка].Font.Underline - подчёркнутый шрифт
Sheet.Cells[строка,колонка].Font.Size - размер шрифта
С помощью всего этого, ты сможешь создавать простые, но эффективные отчёты. В Delphi, в директории Lib есть файлик excel97.pas, в нём ты найдёшь все доступные функции Excel. Если у тебя есть достаточные навыки, чтобы разобраться с ним, то в перёд. А начинающему программисту там без бутылки не разобраться. Если ты относишься ко второй категории, то жди, возможно я ещё вернусь к этой теме.
Список литературы
Для подготовки данной работы были использованы материалы с сайта http://vlad2000.h1.ru/
Наша задача создать отчётность в Excel. Эта потребность может возникнуть у каждого программиста баз данных, ведь Office установлен в нашей стране практически на каждом компьютере. А это значит, что вашу отчётность можно смело переносить между ком
Все для организации групповой работы
История первых процессоров и крупнейшие маркетинговые ошибки
Развитие представлений об информации
Телекоммуникационная «начинка» офисных помещений
Интернет как инструмент маркетинга
Развитие представлений об информации
Развитие представлений об информации
Развитие представлений об информации
Является ли математика частью информатики?
CASE-мышление: вы готовы программировать иначе?
Copyright (c) 2024 Stud-Baza.ru Рефераты, контрольные, курсовые, дипломные работы.