这个语句为什么啊。弄不懂。请教请教(30分)

  • 主题发起人 主题发起人 lovefox
  • 开始时间 开始时间
L

lovefox

Unregistered / Unconfirmed
GUEST, unregistred user!
for I:=0 to SG_User.RowCount-1 do
begin
SelRec:=SelRec+1;
For J:=0 to Sg_user.ColCount-1do
begin
SelField:=SelField+1;
XlsSheet.Cells[SelRec,SelField] := SG_User.Cells[J,I];
// XlsSheet.Cells[I,J] := SG_User.Cells[J,I];
//showmessage(SG_User.cells[J,i]);
end;
SelField:=0;
end;

上面的代码段是输出SG_USER(TSTRINGGRID)的数据到EXCEL表,本来用I J循环变量
应该可以的,可是我每次用IJ赋值,给运行出错。
非得我在定义一个变量才可以.不知道是否是因为EXCEL把IJ认做表格里面得行列了。
为了验证,我又写了一个循环
for I:=0 to SG_User.ColCount-1do
begin
CellNum:=I;
XlsSheet.Columns[CELLNUM].ColumnWidth:=10;
end;

还是错误,可是 XlsSheet.Columns[1].ColumnWidth:=10;
又正确。WHY
 
I/J/CELLNUM声明了么?
delphi中使用变量必须先声明的。按照你的要求,要声明成integer型
 
你的I,J循环不能从0开始。得从1起。
EXCEL里的行,列不是从0开始计数的。
 
呵呵,这么简单的问题都没有想到啊。
kingdeezj多谢了。给分了
 
后退
顶部