Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 25.10.2017, 17:52
starcon starcon вне форума
Новичок
 
Регистрация: 15.03.2014
Сообщения: 84
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию Помогите с Экспортом в Excel

Ребята, помогите с экспортом данных в Excel Из dbgrideh

Привожу рабочий код , но проблема что мне в первой строке Excel файла нужно выводить имена столбцов, а уже во второй писать данные.
Сейчас получается, что названия столбцов затирают первую строку.
То есть , если убрать названия столбцов
Код:
 ExcelApp.WorkBooks[1].WorkSheets[1].Cells[1,1] := 'MARKA';
 ExcelApp.WorkBooks[1].WorkSheets[1].Cells[1,2] := 'DEVICE';
 ExcelApp.WorkBooks[1].WorkSheets[1].Cells[1,3] := 'ADDRESS';
 ExcelApp.WorkBooks[1].WorkSheets[1].Cells[1,4] := 'FIO';
 ExcelApp.WorkBooks[1].WorkSheets[1].Cells[1,5] := 'DATE';
, тогда экспортирует правильно. Но мне нужно с названиями колонок

Код:
procedure Timport.BitBtn1Click(Sender: TObject);
var
ExcelApp: Variant;
v_file: String;
begin
  v_file:=('Импорт.xls');
  SaveDialog1.FileName:=v_file;
  If SaveDialog1.Execute then
begin
 v_file:=SaveDialog1.FileName;
 If FileExists(v_file) then
begin
 If Application.MessageBox(PChar('Файл "'+v_file+
 '" уже существует.'+#13+'Заменить существующий файл?'),
 'Сохранение',MB_YESNO+MB_ICONWARNING)<>6 then
 Exit;
end;
 SaveDBGridEhToExportFile(TDBGridEhExportAsXLS,
   form2.DBGridEh1,v_file,True);
      ExcelApp := CreateOleObject('Excel.Application');
 ExcelApp.WorkBooks.Open(v_file);
 ExcelApp.WorkBooks[1].WorkSheets[1].Cells[1,1] := 'MARKA';
 ExcelApp.WorkBooks[1].WorkSheets[1].Cells[1,2] := 'DEVICE';
 ExcelApp.WorkBooks[1].WorkSheets[1].Cells[1,3] := 'ADDRESS';
 ExcelApp.WorkBooks[1].WorkSheets[1].Cells[1,4] := 'FIO';
 ExcelApp.WorkBooks[1].WorkSheets[1].Cells[1,5] := 'DATE';
 ExcelApp.Columns.AutoFit;
       ExcelApp.ActiveSheet.UsedRange.Columns.Borders.LineStyle:=1;
      ExcelApp.ActiveSheet.UsedRange.Rows.Borders.LineStyle:=1;
 ExcelApp.Workbooks.Close; //закрываем
  ExcelApp.Quit ;
   ExcelApp := Unassigned;
    If Application.MessageBox(PChar('Файл "'+v_file+'" - сохранен'+
    #13+'Открыть?'),'Вопрос',
   MB_YESNO+MB_ICONQUESTION)=6 then
  begin
    ExcelApp := CreateOleObject('Excel.Application');
    ExcelApp.WorkBooks.Open(v_file);
  ExcelApp.Visible := true;
   ExcelApp:=UnAssigned
  end;
 DBGridEh1.SetFocus;
 import.Button5.Enabled:=true;
      end;
end;

Спасибо

Последний раз редактировалось starcon, 25.10.2017 в 17:57.
Ответить с цитированием
  #2  
Старый 25.10.2017, 19:54
Аватар для Guaho
Guaho Guaho вне форума
Начинающий
 
Регистрация: 27.08.2017
Сообщения: 173
Версия Delphi: Delphi7
Репутация: 10
По умолчанию

Метод "SaveDBGridEhToExportFile" автоматически выводит имена столбцов. Зачем тогда самому их указывать? Вам нужны другие имена столбцов? Или грид-источник не содержит заголовков?

Последний раз редактировалось Guaho, 25.10.2017 в 20:10.
Ответить с цитированием
  #3  
Старый 25.10.2017, 21:15
starcon starcon вне форума
Новичок
 
Регистрация: 15.03.2014
Сообщения: 84
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Спасибо за ответ.
Именно ,нужны другие имена столбцов
Ответить с цитированием
  #4  
Старый 25.10.2017, 21:37
Аватар для Guaho
Guaho Guaho вне форума
Начинающий
 
Регистрация: 27.08.2017
Сообщения: 173
Версия Delphi: Delphi7
Репутация: 10
По умолчанию

Ну тогда что мешает заменить их в гриде перед выводом, а после - восстановить?
Ответить с цитированием
  #5  
Старый 26.10.2017, 12:17
starcon starcon вне форума
Новичок
 
Регистрация: 15.03.2014
Сообщения: 84
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Цитата:
Сообщение от Guaho
Ну тогда что мешает заменить их в гриде перед выводом, а после - восстановить?
Я думал уже над этим.Наверное на этом и остановлюсь.
Спасибо
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 16:03.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter