frReport.Export(frxXLSExport1);哪位高手指点一下
procedure TfrxExcel.SetRowsSize(aRanges: TStrings;
Sizes: array of Currency; MainSizeIndex: integer;
RowsCount:integer; aProgress: TfrxProgress);
var
i: integer;
s: string;
curSizes: integer;
v: Variant;
begin
if aRanges.Count > 0 then
begin if Assigned(aProgress) then
if not aProgress.Terminated then
begin
s := frxResources.Get('ProgressRows') + ' - 2';
aProgress.Execute(aRanges.Count, s, True, True);
end; WorkSheet.Range['A1:A' + IntToStr(RowsCount)].RowHeight := Sizes[MainSizeIndex];
s := aRanges[0];
curSizes := Integer(aRanges.Objects[0]); for i := 1 to Pred(aRanges.Count) do
begin if Assigned(aProgress) then
begin
if aProgress.Terminated then
Break;
aProgress.Tick;
end; if Integer(aRanges.Objects[i]) = MainSizeIndex then
Continue;
if Integer(aRanges.Objects[i]) <> curSizes then
begin
if curSizes <> MainSizeIndex then
begin
try
v := WorkSheet.Range[s]; //报错报这里
v.RowHeight := Sizes[curSizes];
except
end;
end;
curSizes := Integer(aRanges.Objects[i]);
s := aRanges[i];
end
else if Length(s) + Length(aRanges[i]) + 1 > 255 then
begin
try
v := WorkSheet.Range[s];
v.RowHeight := Sizes[curSizes];
except
end;
s := aRanges[i];
end
else s := s + ';' + aRanges[i]
end; if Length(s) > 0 then
begin
try
v := WorkSheet.Range[s].Rows;
v.RowHeight := Sizes[curSizes];
except
end;
end; end;
end;
procedure TfrxExcel.SetRowsSize(aRanges: TStrings;
Sizes: array of Currency; MainSizeIndex: integer;
RowsCount:integer; aProgress: TfrxProgress);
var
i: integer;
s: string;
curSizes: integer;
v: Variant;
begin
if aRanges.Count > 0 then
begin if Assigned(aProgress) then
if not aProgress.Terminated then
begin
s := frxResources.Get('ProgressRows') + ' - 2';
aProgress.Execute(aRanges.Count, s, True, True);
end; WorkSheet.Range['A1:A' + IntToStr(RowsCount)].RowHeight := Sizes[MainSizeIndex];
s := aRanges[0];
curSizes := Integer(aRanges.Objects[0]); for i := 1 to Pred(aRanges.Count) do
begin if Assigned(aProgress) then
begin
if aProgress.Terminated then
Break;
aProgress.Tick;
end; if Integer(aRanges.Objects[i]) = MainSizeIndex then
Continue;
if Integer(aRanges.Objects[i]) <> curSizes then
begin
if curSizes <> MainSizeIndex then
begin
try
v := WorkSheet.Range[s]; //报错报这里
v.RowHeight := Sizes[curSizes];
except
end;
end;
curSizes := Integer(aRanges.Objects[i]);
s := aRanges[i];
end
else if Length(s) + Length(aRanges[i]) + 1 > 255 then
begin
try
v := WorkSheet.Range[s];
v.RowHeight := Sizes[curSizes];
except
end;
s := aRanges[i];
end
else s := s + ';' + aRanges[i]
end; if Length(s) > 0 then
begin
try
v := WorkSheet.Range[s].Rows;
v.RowHeight := Sizes[curSizes];
except
end;
end; end;
end;
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货