![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как сохранить результат запроса в таблицу Excel? [D6, Paradox]
Катунов Юрий © (2007-12-07 20:17:00)Здравствуйте.
Есть запрос
procedure TForm1.Button3Click(Sender: TObject);Запрос сохраняется как текстовый файл. Как можно сохранить в виде, удобном для дальнейшей обработкой Excel?
label xx;
var
i :Integer;
s :String;
begin
y := DateToStr (DateTimePicker1.Date );
zz :=StrToDate (y);
Query1.Active :=false;
Query1.SQL.Clear;
Query1.SQL.Add('SELECT *');
Query1.SQL.Add('FROM db1');
Query1.SQL.Add('WHERE Data = :X ');
Query1.ParamByName('X').AsDate:=zz;
Query1.SQL.Add('ORDER BY Number DESC');
DataSource2.DataSet :=Query1;
Query1.DatabaseName :='Страж';
Query1.Active :=true;
With TStringList.Create Do
begin Add ('ОТЧЁТ ЗА '+ DateToStr (zz));
Add ('Дата'+' '+'Время'+' '+'Номер машины'+' '+'Состояние' );
try
while not Query1.Eof Do
begin
s:='';
for i:=0 to Query1.Fields.Count-1 do s:=s+Query1.Fields[i].AsString+#9;
SetLength(s,Length(s)-1);
Add(s);
Query1.Next;
End;
SaveToFile(CurrentDir +'\sqlresult.xls');
finally
free;
end;
end;
end;
Тут у меня есть задумка делать так:
procedure TForm1.Button1Click(Sender: TObject);но, не сохраняется в файл. При этом вылазеет окно сохранить или нет... и всё равно не сохраняется когда тыкаю ДАА!!!-СОХРАНИ МНЕ ПОЖАЛУЙСТААА!!! ,-))). Может способ какой другой есть или я правильно всё делаю?
var
n : OleVariant;
begin
n :='e:\sqlresult.xls'';
ExcelApplication1.Workbooks.Add(n, 0);
ExcelWorkBook1.ConnectTo(ExcelApplication1.ActiveWorkbook);
ExcelApplication1.Cells.Item[1,1].Value :='Данные';
ExcelWorkBook1.Save;
ExcelWorkBook1.Close;
end;
Катунов Юрий (2007-12-09 13:44:00) [1]Удалено модератором
Хохрин Павел (2007-12-09 13:35:00) [2]Удалено модератором
Хохрин Павел (2007-12-09 13:35:00) [3]Удалено модератором
Катунов Юрий (2007-12-09 13:33:00) [4]Удалено модератором
Хохрин Павел (2007-12-09 11:38:00) [5]Удалено модератором
Катунов Юрий (2007-12-09 07:00:00) [6]Ага... Чётко... Всё получилось... Спасибо engine
engine (2007-12-07 20:49:00) [7]Вот тебе вариант:
uses ComObj;
var
App,
WorkBook : Variant;
App := CreateOLEObject('excel.application');
WorkBook := FApp.WorkBooks.Add( AFile);
WorkBook.SaveAs('temp.xls');
Должно работать.
Катунов Юрий (2007-12-07 20:42:00) [8]Это нет....... это не переменные. Это стандартные компоненты с вкладки Servers.......
engine (2007-12-07 20:35:00) [9]А где объявление переменных
ExcelApplication1
ExcelWorkBook1