TDBGridEh导出Excel。
j:=RzPageControl1.ActivePageIndex;
for i:=0 to RzPageControl1.Pages[j ].ControlCount-1 do
if (RzPageControl1.Pages[j].Controls[i] is TGroupBox)then
begin
for k:=0 to (RzPageControl1.Pages[j].Controls[i] as TGroupBox).ControlCount-1 do
if ((RzPageControl1.Pages[j].Controls[i] as TGroupBox).Controls[k] is TDBGridEh)then
Excel:=(((RzPageControl1.Pages[j].Controls[i] as TGroupBox).Controls[k] as TDBGridEh).Name);
end;
获得当前窗体的TDBGridEh,
然后看了些资料。TDBGridEh 导出Excel
if saveDialog1.Execute then
begin
SaveDBGridEhToExportFile(TDBGridEhExportAsXLS,Excel,savedialog1.filename+'.xls',true);
showmessage('成功导出到'+ savedialog1.filename+'.xls');
end;
这里的Excel 类型不同。如何转换?或者我弄错了?,正确方法是什么?
[解决办法]
当然类型不同啦,你赋值都用错了
你的代码要作以下修改就可以了:
定义
var Excel:TDBGridEH;//估计这里你用了 Var Excel:string;
赋值
Excel:=((RzPageControl1.Pages[j].Controls[i] as TGroupBox).Controls[k] as TDBGridEh);