procedure TW_Kqrb.SpeedButton12Click(Sender: TObject);
var
i,row:integer;
j:Int64;
Excel:variant;
begin
If (Query1.Active = False) or (Query1.RecordCount = 0) Then Exit;
For I:=0 to DbGrid1.Columns.Count - 1 do
// ExcelWorksheet1.Cells.Item[5,I+1]:=DbGrid1.Columns[I].Title.Caption;
Excel.Cells[5,I+1]:=DbGrid1.Columns[I].Title.Caption;
Row:=6;
Query1.First;
While Not Query1.Eof do
begin
Application.ProcessMessages;
For I:=0 to DbGrid1.Columns.Count - 1 do
Excel.Cells[Row,I+1]:=''''+Query1.FieldByName(DbGrid1.Columns[I].FieldName).AsString;
Query1.Next;
Row:=Row+1;
end;
// 表格标题
for iLoop := 0 to makeDBGridEh.Columns.Count - 1 do
xlSheet.WorkSheets[1].Cells[2, iLoop+1] := makeDBGridEh.Columns[iLoop].Title.Caption;
// 数据
ARow := 3;
with MakeDataSource.DataSet do
begin
DisableControls;
First;
while not Eof do
begin
for iLoop := 0 to Fields.Count - 1 do
begin
szValue := Fields[iLoop].Value;
xlSheet.WorkSheets[1].Cells[ARow, iLoop+1] := szValue;
end;
Inc(ARow);
Next;
end;
First;
EnableControls;
end;