查询出的数据在DBGrid中分2页显示,采用下面导出方法:
ARow := 1;
DmForm.TickADO.First;
while Not DmForm.TickADO.Eof do
begin
ACol := 0;
for i := 0 to TickSerachGrid.FieldCount -1 do
begin
if Not VarIsNull(TickSerachGrid.Fields[i].Value) then
_sVal := Trim(TickSerachGrid.Fields[i].Value)
else
_sVal := ''; _Title := Trim(TickSerachGrid.Columns[i].Title.Caption); MsExcel.Cells[3,ACol + 1].Value := Trim(_Title);
MsExcel.Cells[ARow + 3,ACol + 1].Value := Trim(_sVal); ACol := ACol + 1;
end;
DmForm.TickADO.Next;
ARow := ARow + 1;
end;
但是只能导出当页的数据,如何导出全部页的数据?
ARow := 1;
DmForm.TickADO.First;
while Not DmForm.TickADO.Eof do
begin
ACol := 0;
for i := 0 to TickSerachGrid.FieldCount -1 do
begin
if Not VarIsNull(TickSerachGrid.Fields[i].Value) then
_sVal := Trim(TickSerachGrid.Fields[i].Value)
else
_sVal := ''; _Title := Trim(TickSerachGrid.Columns[i].Title.Caption); MsExcel.Cells[3,ACol + 1].Value := Trim(_Title);
MsExcel.Cells[ARow + 3,ACol + 1].Value := Trim(_sVal); ACol := ACol + 1;
end;
DmForm.TickADO.Next;
ARow := ARow + 1;
end;
但是只能导出当页的数据,如何导出全部页的数据?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货