搜索了网络很多资源,都无法把stringgrid上的数据导出成一个excel文件?太难了!
好多介绍说需要安装一些第三方控件。
比如FlexCel这个控件,下载资源很少,即便下载了安装后,都没有像以下图片显示的引入安装路径。更加没有图中的三个控件。论坛里还提到XLSReadWriteII 这个控件,下载了好多版本都安装不上,这个控件安装似乎很难!
这个问题一直困扰着,请有经验的帮忙一下,谢谢!
好多介绍说需要安装一些第三方控件。
比如FlexCel这个控件,下载资源很少,即便下载了安装后,都没有像以下图片显示的引入安装路径。更加没有图中的三个控件。论坛里还提到XLSReadWriteII 这个控件,下载了好多版本都安装不上,这个控件安装似乎很难!
这个问题一直困扰着,请有经验的帮忙一下,谢谢!
解决方案 »
- 请教:indy的tcpclient执行connect时,提示Already connected,断开也不行
- 执行事务处理速度特别慢,求对策???急!
- 请教如何将界面代码与功能代码分离???
- 请大家帮忙:如何将字符串转成十进制数? 在线等!
- 又升内裤了,但我很郁闷,散分!
- delphi7中没有serversocket和clientsocket?改成了tcpserver和tcpclient??
- 如果在webbrower显示的网页中查找字符串?
- 一个D6的控件,没有DPK,里面都 是DCU,如何安装???
- DefaultInterface 是什么意思啊
- 想实现如下功能我该如何做?
- 模式窗口中CloseQuery事件无响应
- Tstringlist可以直接用在SQL中吗?
搜索"delphi 操作excel",一堆出来。
至于读StringGrid,这个简单吧
var
iCount, jCount: Integer;
XLApp: Variant;
Sheet: Variant;
begin
Screen.Cursor := crHourGlass;
if not VarIsEmpty(XLApp) then
begin
XLApp.DisplayAlerts := False;
XLApp.Quit;
VarClear(XLApp);
end;
//通过ole创建Excel对象
try
XLApp := CreateOleObject('Excel.Application');
except
Screen.Cursor := crDefault;
Exit;
end;
SaveDialog1.DefaultExt := 'xls';
SaveDialog1.FileName := FileName;XLApp.WorkBooks.Add; //你要把数据放在那里啊,先生成个文件在e:\1.xls
XLApp.WorkBooks[1].WorkSheets[1].Name := 'sheet1';
Sheet := XLApp.Workbooks[1].WorkSheets['sheet1'];
Target.Row := 0;
for iCount := 0 to Target.RowCount - 1 do
begin
for jCount := 0 to Target.ColCount - 1 do
Sheet.cells[iCount + 1, jCount + 1] := Target.Cells[jCount,iCount];
Target.Row := iCount;
end;
XLApp.ActiveWorkbook.SaveAs(FileName:=FileName);
Screen.Cursor := crDefault;
XLApp.ActiveWorkbook.Close;
end;
当然你要是用advstringgrid的话还有更简单的方法,不用语句,靠控件就能实现。
链接: https://pan.baidu.com/s/16z0LBQxuGztnLiY0e1prPg 提取码: sibz