Показать сообщение отдельно
  #4  
Старый 28.02.2017, 16:27
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Можно просто и подсократить
Код:
procedure TForm7.Button1Click(Sender: TObject);
 var
 i, j: integer;
  begin
    ProgressBar1.Position:=0;
    Timer1.Enabled:=true;
    MyDoc := CreateOleObject('Excel.Application');
    MyDoc.Workbooks.Open(ExtractFilePath(Application.ExeName)+'Отчет.xlt');
    MyDoc.Visible := False;
    MyDoc.Range['D4'] := ComboBox1.Text;
    MyDoc.Range['E6'] := DateTimePicker1.DateTime;
    MyDoc.Range['G6'] := DateTimePicker2.DateTime;
    MyDoc.Range['D10'] := Edit1.Text;
    MyDoc.Range['D12'] := Edit2.Text;

    j:= 1;
    for i := 18 to 39{40} do
     begin
    // Заполнение столбца "Отчетные документы"
      MyDoc.Range['C' + IntToStr(i)]:= StringGrid1.Cells[0,j];
    // Заполнение столбца "Стоимость"
      MyDoc.Range['J' + IntToStr(i)]:= StringGrid1.Cells[1,j];
      Inc(j);
      end;
    MyDoc.DisplayAlerts := False;
    MyDoc.ActiveWorkBook.SaveAs(ExtractFilePath(Application.ExeName)+'Отчет_'+FormatDateTime('ddmmyyyy_hhmm', Now)+'.xls');
  end;
Ответить с цитированием