Код:
ind:=14;
DBGrid2.DataSource.DataSet.First;
c := DBGrid2.DataSource.DataSet.RecordCount;
For i:=1 to DBGrid2.DataSource.DataSet.RecordCount do
Begin
ProgressBar2.Position := (i * 100) div c;
Sheet.Cells[ind,1]:=DataModule2.QueryROUBSD.FieldByName('Column1').Value;
Sheet.Cells[ind,3].Columns.NumberFormat:='# #0,000';
Sheet.Cells[ind,3]:=DataModule2.QueryROUBSD.FieldByName('Column2').Value;
inc(ind);
DBGrid2.DataSource.DataSet.Next;
end;
Sheet.Cells[39,1].Columns.Font.Bold:=True;
Sheet.Cells[39,1].Columns.Font.Size:=12;
Sheet.Cells[39,1]:='Среднее';
Sheet.Cells[39,7].Columns.Font.Bold:=True;
Sheet.Cells[39,7].Columns.Font.Size:=12;
Sheet.Cells[39,7]:='=AVERAGE(A14:A37)';
Проблема в следующем как сделать так чтоб когда ексель закончил наполнятся записями, пощитать на строчку пониже среднее значение всего столбика. А то я не могу понять как это прописать. Дапустим если в експорт выполнится мои кодом и значения будут дапустим находитя нижу 39 строки. То Ексель начинает ругатся на зациклинность.