1.如何将DELPHI中,dbgrid中查询的数据保存成EXCEL文档
2.如何实现EXCEL中的数据导入到DELPHI中的DBGRID中,然后再导入到数据表中
谢谢!
2.如何实现EXCEL中的数据导入到DELPHI中的DBGRID中,然后再导入到数据表中
谢谢!
解决方案 »
- 关于DBGridEh 哪个朋友有DBGridEh这样的例子 让DBGridEh 向excel一样的一行一行的输入数据,还能自动求和,和检测数据输入的合法性的代
- CreateFile问题
- 怎样实现DBGRID行位置的调换,并保存调换后的次序?
- 大量数据修改和显示的问题
- 各个与数据库有关操作问题,在线等待!在线给分!
- 急!!
- 哪位大哥可以给我一个不需要smtp服务器的发送邮件的例子???
- 兄弟们哪有好看的功能图片下载。。有急用,感谢!!
- 高分请教关于解密的问题
- Z_x_b,我要扑克牌控件!
- 请问COM+服务运行后,客户端如何访问COM+?在线,急
- 如何用Delphi做一个类似Office的字体选择与字体大小选择框?
procedure TForm1.DBgridToExcel(bsGrid:TDBGrid;filename:string); //DBGrid输出到Excel
var
v,sheet: Variant;
i,j:integer;
begin
SaveDialog1.Filter:='*.xls';
SaveDialog1.FileName:=filename;
if SaveDialog1.Execute then
try
v:=CreateOleObject('Excel.Application'); //创建ole对象
v.WorkBooks.Add;
Sheet:=v.WorkBooks[1].WorkSheets[1];
bsGrid.DataSource.DataSet.first;
i:=1;
While Not(bsGrid.DataSource.DataSet.Eof) Do
Begin
For j:=1 To bsGrid.FieldCount Do
if bsGrid.Columns[j-1].Visible=true then
begin
Sheet.Cells[i+1,j]:= bsGrid.Fields[j-1].AsString ; //+1保留列标题
Sheet.Cells[1,j]:= bsGrid.Fields[j-1].FieldName ;
end;
bsGrid.DataSource.DataSet.Next ;
i := i+1 ;
End ;
v.WorkBooks[1].saveas(SaveDialog1.FileName);
v.WorkBooks[1].close;
v.quit;
v:=Unassigned;
except
v.DisplayAlerts:=false; //不提示存盘
v.Quit; //关闭OLE链接
showmessage('初始化Excel失败,可能没装Excel,或者其他错误;请重新再试。');
close;
end;
end;
调用时,
DBgridToExcel(bsGrid1;'wwwwwww');
DBGrid本来就显示的是数据库中的数据。
但第二个问题是不可能的...你的次序错了...dbgrid是到一个数据库中读数据或者写入..而不是数据库到dbgrid中读数据的