我给你一个我的程序范例,你看看var i,row,column:integer; begin Try ExcelApplication1.Connect; Except MessageDlg('Excel may not be installed', mtError, [mbOk], 0); Abort; End; ExcelApplication1.Visible[0]:=True; ExcelApplication1.Caption:='Excel Application'; ExcelApplication1.Workbooks.Add(Null,0); ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks[1]); ExcelWorksheet1.ConnectTo(ExcelWorkbook1.Worksheets[1] as _Worksheet); ExcelApplication1.Cells.Item[1,1]:='开票日期'; ExcelApplication1.Cells.Item[1,2]:='票内号码'; ExcelApplication1.Cells.Item[1,3]:='部门编号'; ExcelApplication1.Cells.Item[1,4]:='仓库编号'; ExcelApplication1.Cells.Item[1,5]:='油品编号'; ExcelApplication1.Cells.Item[1,6]:='油品名称'; ExcelApplication1.Cells.Item[1,7]:='客户名称'; ExcelApplication1.Cells.Item[1,8]:='发票号码'; ExcelApplication1.Cells.Item[1,9]:='销售数量'; ExcelApplication1.Cells.Item[1,10]:='已提数量'; ExcelApplication1.Cells.Item[1,11]:='未提数量'; ExcelApplication1.Cells.Item[1,12]:='销售单价';adoquery5.Close; adoquery5.SQL.Clear; adoquery5.SQL.Add('select * from lsyswt where stno=:ckno and depno=:bmno order by invdate'); adoquery5.Parameters.ParamByName('ckno').value:=copy(combobox1.Text,1,4); adoquery5.Parameters.ParamByName('bmno').value:=copy(combobox2.text,1,4); adoquery5.Open; adoquery5.First; row:=2; While Not adoquery5.Eof do begin column:=1; for i:=1 to adoquery5.FieldCount do begin excelworksheet1.cells.item[row,2].NumberFormatLocal:='@'; excelworksheet1.cells.item[row,3].NumberFormatLocal:='@'; excelworksheet1.cells.item[row,4].NumberFormatLocal:='@'; excelworksheet1.cells.item[row,5].NumberFormatLocal:='@'; excelworksheet1.cells.item[row,8].NumberFormatLocal:='@'; ExcelWorksheet1.Cells.Item[row,column]:=adoquery5.fields[i-1].AsString; column:=column+1; end; adoquery5.Next; row:=row+1; end;
i,row,column:integer;
begin
Try
ExcelApplication1.Connect;
Except
MessageDlg('Excel may not be installed',
mtError, [mbOk], 0);
Abort;
End;
ExcelApplication1.Visible[0]:=True;
ExcelApplication1.Caption:='Excel Application';
ExcelApplication1.Workbooks.Add(Null,0);
ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks[1]);
ExcelWorksheet1.ConnectTo(ExcelWorkbook1.Worksheets[1] as _Worksheet);
ExcelApplication1.Cells.Item[1,1]:='开票日期';
ExcelApplication1.Cells.Item[1,2]:='票内号码';
ExcelApplication1.Cells.Item[1,3]:='部门编号';
ExcelApplication1.Cells.Item[1,4]:='仓库编号';
ExcelApplication1.Cells.Item[1,5]:='油品编号';
ExcelApplication1.Cells.Item[1,6]:='油品名称';
ExcelApplication1.Cells.Item[1,7]:='客户名称';
ExcelApplication1.Cells.Item[1,8]:='发票号码';
ExcelApplication1.Cells.Item[1,9]:='销售数量';
ExcelApplication1.Cells.Item[1,10]:='已提数量';
ExcelApplication1.Cells.Item[1,11]:='未提数量';
ExcelApplication1.Cells.Item[1,12]:='销售单价';adoquery5.Close;
adoquery5.SQL.Clear;
adoquery5.SQL.Add('select * from lsyswt where stno=:ckno and depno=:bmno order by invdate');
adoquery5.Parameters.ParamByName('ckno').value:=copy(combobox1.Text,1,4);
adoquery5.Parameters.ParamByName('bmno').value:=copy(combobox2.text,1,4);
adoquery5.Open;
adoquery5.First;
row:=2;
While Not adoquery5.Eof do
begin
column:=1;
for i:=1 to adoquery5.FieldCount do
begin
excelworksheet1.cells.item[row,2].NumberFormatLocal:='@';
excelworksheet1.cells.item[row,3].NumberFormatLocal:='@';
excelworksheet1.cells.item[row,4].NumberFormatLocal:='@';
excelworksheet1.cells.item[row,5].NumberFormatLocal:='@';
excelworksheet1.cells.item[row,8].NumberFormatLocal:='@';
ExcelWorksheet1.Cells.Item[row,column]:=adoquery5.fields[i-1].AsString;
column:=column+1;
end; adoquery5.Next;
row:=row+1;
end;