各位大虾,大家好,小弟有礼了!!最近想铸点东西,遇到个问题就是不知道怎么才能把查询后的数据存为excel文件!!我用的数据库是Access,用adoquery和datasource连接的数据库。多谢!!!

解决方案 »

  1.   

    把搜索到的数据导入到excel中
    EA1.Connect;
     EA1.Visible[0]:=False;
     EA1.Workbooks.Add(xlWBATWorkSheet,0);
     asheet:=EA1.Worksheets.Item[1];
     PrnQuery.First;
     for i:=1 to PrnQuery.FieldCount  do
       asheet.cells[1,i].Value:=PrnQuery.Fields[i-1].DisplayName;
     for i:=1 to PrnQuery.RecordCount do
       begin
         for j:=1 to PrnQuery.FieldCount do
           asheet.Cells[i+1,j].Value:=PrnQuery.Fields[j-1].AsString;
           Application.ProcessMessages;
           PrnQuery.Next;
           Label3.Caption:=IntToStr(i);
       end;
     end;
     SaveDialog.Execute;
     if SaveDialog.FileName<>'noname' then begin
        aSheet.SaveAs(SaveDialog.FileName);
        ShowMessage('文件已保存為'+SaveDialog.FileName);
     end;
     aSheet.Application.Quit;
    抄录的,我也没有用过,你试试吧。
      

  2.   

    另建窗口,加入如下控件及代码
    1)  打开Excel 
    ExcelApplication1.Connect;2) 显示当前窗口:
    ExcelApplication1.Visible[0]:=True;
     
    6) 打开已存在的工作簿:
    ExcelApplication1.Workbooks.Open (c:\a.xls
    EmptyParam,EmptyParam,EmptyParam,EmptyParam,
    EmptyParam,EmptyParam,EmptyParam,EmptyParam,
        EmptyParam,EmptyParam,EmptyParam,EmptyParam,0)
    25) 关闭工作簿:
    ExcelApplication1.WorkBooks.Close;26) 退出 Excel:
    ExcelApplication1.Quit;
    ExcelApplication1.Disconnect;
      

  3.   

    呵呵,如果你搜索出来的数据是在dbgrid 中显示,
    那么我可以给你段代码,
    我自己写的,不懂的地方,可以给我留言,或者 发邮件…………http://expert.csdn.net/Expert/topic/1855/1855520.xml?temp=.691601