PAS + excel
ЗЫ
Только не надо говорить учи ООП.
Не вдалбливается пока ООП у меня.
var
i,j,CCount,RCount: Integer;
LApp, LXLS, LCell: OleVariant;
SRange:String;
begin
if SaveDialog1.Execute then
begin
RCount:=MyADOQuery.RecordCount;
if RCount>0 then
begin
CCount:=MyADOQuery.FieldCount;
LApp := CreateOLEObject('Excel.Application');
try
LApp.DisplayAlerts := False;
LApp.Workbooks.Open(ExtractFilePath(Application.ExeName)+'\temp.xls');
//LApp.Workbooks.Add;
LXLS := LApp.Workbooks[1];
SRange:='A4:'+chr(ord('A')+CCount)+IntToStr(RCount+3);
LCell:=LxLs.ActiveSheet.Range[SRange];
MyADOQuery.First;
for i := 1 to RCount do
begin
for j:=1 to CCount do
begin
LCell.Cells[ i, j].Value := MyADOQuery.Fields.Fields[j-1].AsString;
end;
MyADOQuery.Next;
end;
LxLs.ActiveSheet.Range['B1'].Cells[ 1, 1].Value:=MyADOQuery.Parameters.Items[0].Value;
LxLs.ActiveSheet.Range['B2'].Cells[ 1, 1].Value:=MyADOQuery.Parameters.Items[1].Value;
LxLs.ActiveSheet.Range['D1'].Cells[ 1, 1].Value:=MyADOQuery.Parameters.Items[2].Value;
LXLS.SaveAs(SaveDialog1.FileName);
finally
LApp.Quit;
end;
Sleep(1000);
end;
end;
end;
Примерно так - только запись заменить на считывание.Будут вопросы - пиши
а можно построчное объяснение :) плз
Я Дельфу консольную знаю, а ООП ноль полный
и еще
Для проги обязательно чтобы файл был загружен в ЕКСЕЛ?
Подробнее - мылом,пиши
Цитата:
Originally posted by slavko
Запускать Excel и загружать файл не нужно.
Подробнее - мылом,пиши [email]slavko_2000@mail.ru[/email]
Запускать Excel и загружать файл не нужно.
Подробнее - мылом,пиши [email]slavko_2000@mail.ru[/email]
жду письма