FAQ VCL
Работа с MS Office\Word

:: Меню ::
:: На главную ::
:: FAQ ::
:: Заметки ::
:: Практика ::
:: Win API ::
:: Проекты ::
:: Скачать ::
:: Секреты ::
:: Ссылки ::

:: Сервис ::
:: Написать ::

:: MVP ::

:: RSS ::

Яндекс.Метрика

Как закрыть все книги в Excel?

var
  E: OleVariant;
  
procedure TForm1.Button1Click(Sender: TObject);
begin
   E.Workbooks.Close;
end;


Как получить все открытые книги в Excel?

var
  E: OleVariant;

procedure TForm1.Button1Click(Sender: TObject);
var
  i: Integer;
begin
   for i := 1 to E.WorkBooks.Count do
      ShowMessage(E.WorkBooks.Item[i].FullName);
end;


Как сохранить рабочую книгу Excel?

var
  E: OleVariant;

procedure TForm1.Button1Click(Sender: TObject);
var
  Result: Boolean;
begin
   try
      E.WorkBooks.Item[1].SaveAs('d:\book1.xlsx');
      Result := E.WorkBooks.Item[1].Saved;
   except
      Result := False;
   end;
end;


Как открыть рабочую книгу Excel?

var
  E: OleVariant;

procedure TForm1.Button1Click(Sender: TObject);
begin
   E.WorkBooks.Open('d:\book1.xlsx'{, ReadOnly := True});
end;


Как получить все листы книги в Excel?

var
  E: OleVariant;

procedure TForm1.Button1Click(Sender: TObject);
var
  i: Integer;
begin
   for i := 1 to E{.WorkBooks[1]}.WorkSheets.Count do
      ShowMessage(E{.WorkBooks[1]}.WorkSheets[i].Name);
end;


Как получить значение из ячейки листа в Excel?

var
  E: OleVariant;

procedure TForm1.Button1Click(Sender: TObject);
begin
   ShowMessage(E{.ActiveWorkBook}.WorkSheets[1].Cells[1, 1].Value);
end;


Как проверить грамматику в выбранной ячейке в Excel?

var
  E: OleVariant;

procedure TForm1.Button1Click(Sender: TObject);
begin
   E{.ActiveWorkBook}.WorkSheets[1].Cells[1, 1].CheckSpelling;
end;


Как очистить ячейку/диапазон ячеек?

var
  E: OleVariant;

// Очистка ячейки
procedure TForm1.Button1Click(Sender: TObject);
begin
   E.Cells[1, 1].ClearContents;
end;

// Очистка диапазона ячеек
procedure TForm1.Button1Click(Sender: TObject);
begin
   E.Range['A1:D4'].ClearContents;
end;


Как полностью очистить ячейку/диапазон ячеек (вместе с форматированием)?

var
  E: OleVariant;

// Очистка ячейки
procedure TForm1.Button1Click(Sender: TObject);
begin
   E.Cells[1, 1].Clear;
end;

// Очистка диапазона ячеек
procedure TForm1.Button1Click(Sender: TObject);
begin
   E.Range['A1:D4'].Clear;
end;


Как добавить комментарий к ячейке?

var
  E: OleVariant;

procedure TForm1.Button1Click(Sender: TObject);
var
  Range: OleVariant;
begin
   Range := E.Range['A1:A1'];
   Range.AddComment('Текст комментария');
end;

При использовании материала - ссылка на сайт обязательна