Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.01.2008, 13:16   #1
Karl_Karlovi4
Пользователь
 
Регистрация: 28.11.2007
Сообщений: 21
По умолчанию экспорт таблицы

Уважаемые программисты, подскажите как перенести данные из таблицы находящейся в Delphi в Excel ? заранее спасибо.

P.S. забыл сказать используется DBGridEh

Последний раз редактировалось Karl_Karlovi4; 17.01.2008 в 13:38.
Karl_Karlovi4 вне форума Ответить с цитированием
Старый 17.01.2008, 13:33   #2
SunKnight
Участник клуба Подтвердите свой е-майл
 
Аватар для SunKnight
 
Регистрация: 14.12.2007
Сообщений: 1,434
По умолчанию

Код:
procedure TForm2.N5Click(Sender: TObject);
var
workbk : _workbook; // определяем workbook
worksheet : _worksheet; // определяем worksheet
i, j, k, r, c : integer;
iindex : olevariant;
tabgrid : variant;
begin
  iindex := 1;
  r := sg.rowcount;
  c := sg.colcount;
  // Создаём массив-матрицу
  tabgrid := vararraycreate([0,(r - 1),0,(c - 1)],varolestr);
  i := 0;
  // Определяем цикл для заполнения массива-матрицы
  repeat
  for j := 0 to (c - 1) do
  tabgrid[i,j] := sg.cells[j,i];
  inc(i,1);
  until
  i > (r - 1);
  // Соединяемся с сервером texcelapplication
  xlapp.connect;
  // Добавляем workbooks в excelapplication
  xlapp.workbooks.add(xlwbatworksheet,0);
  // Выбираем первую workbook
  workbk := xlapp.workbooks.item[iindex];
  // Определяем первый worksheet
  worksheet := workbk.worksheets.get_item(1) as _worksheet;
  // Сопоставляем delphi массив-матрицу с матрицей в worksheet
  worksheet.range['a1',worksheet.cells.item[r,c]].Value2 :=tabgrid;
  // Заполняем свойства worksheet
  worksheet.name := 'customers';
  worksheet.columns.font.bold := true;
  worksheet.columns.horizontalalignment := xlright;
  worksheet.columns.columnwidth := 14;
  // Заполняем всю первую колонку
  worksheet.range['a' + inttostr(1),'f' + inttostr(r)].font.color:=sg.Font.Color;
  worksheet.range['a' + inttostr(1),'f' + inttostr(r)].font.Size :=sg.Font.Size;
  worksheet.range['a' + inttostr(1),'f' + inttostr(r)].font.fontstyle:=sg.Font.Charset;
  worksheet.range['a' + inttostr(1),'f' + inttostr(r)].font.name:=sg.Font.name;
  worksheet.Range ['a1','f1'].Interior.Color:=sg.FixedColor;
  worksheet.range['a' + inttostr(1),'a' + inttostr(r)].horizontalalignment := xlhalignleft;
  worksheet.range['b' + inttostr(1),'b' + inttostr(r)].horizontalalignment := xlhalignleft;
  worksheet.range['c' + inttostr(1),'c' + inttostr(r)].horizontalalignment := xlhalignleft;
  worksheet.range['d' + inttostr(1),'d' + inttostr(r)].horizontalalignment := xlhalignleft;
  worksheet.range['e' + inttostr(1),'e' + inttostr(r)].horizontalalignment := xlhalignleft;
  worksheet.range['f' + inttostr(1),'f' + inttostr(r)].horizontalalignment := xlhalignleft;
  worksheet.range['a1','f1'].horizontalalignment := xlhaligncenter;
  {worksheet.range['a' + inttostr(1),'f' + inttostr(r)].ColumnWidth :=sg.DefaultColWidth;}
  worksheet.range['a' + inttostr(1),'a' + inttostr(r)].columnwidth := 25;
  worksheet.range['d' + inttostr(1),'d' + inttostr(r)].columnwidth := 25;
  // Показываем excel
  xlapp.visible[0] := true;
  worksheet.range['a' + inttostr(1),'f' + inttostr(r)];
  // Разрываем связь с сервером
  xlapp.disconnect;
  // unassign the delphi variant matrix
  tabgrid := unassigned;
end;
Перенос данных из StringGrid в Excel
Проповедую design patterns, верую в MVC, доверяю eXtrime programming.
SunKnight вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Экспорт WRL в 3dsmax T1000 Помощь студентам 1 11.08.2008 11:24
Экспорт из Access в Excel, Экспорт из отчётов в таблицу Excel Kissedbythegod Microsoft Office Access 1 31.05.2008 22:15
Экспорт класса из ДЛЛ SunKnight Общие вопросы Delphi 2 21.05.2008 19:31
Экспорт в Access е! Marisa Microsoft Office Access 3 31.01.2008 15:32
Экспорт из Excel Nemo333 БД в Delphi 3 04.04.2007 15:53