DataSet导出Excel格式问题
导出函数代码如下:
procedure DataSetToExcel(DataSet:TDataSet);
var
str:string;
i:Integer;
excelapp,sheet:Variant;
begin
str:='';
DataSet.DisableControls;
for i:=0 to DataSet.FieldCount-1 do
str:= str + DataSet.Fields[i].DisplayLabel + char(9);
str:= str + #13;
DataSet.First;
while not(DataSet.eof) do
begin
for i:= 0 to DataSet.FieldCount-1 do
str:= str+DataSet.Fields[i].AsString + char(9);
str:= str + #13;
DataSet.next;
end;
DataSet.EnableControls;
clipboard.Clear;
Clipboard.Open;
Clipboard.AsText:=str;
Clipboard.Close;
excelapp:=createoleobject('excel.application');
excelapp.workbooks.add(1);
sheet:=excelapp.workbooks[1].worksheets[1];
sheet.name:='Sheet1';
//sheet.cells.NumberFormatLocal := '@';
sheet.paste;
Clipboard.Clear;
sheet.Columns.AutoFit;
sheet.UsedRange.Select;
excelapp.visible:=true;
end;