Excel ЧаВо


Как очистить область ячеек? Как определить что ячейка Excel пустая?


Delphi:

ASheet.Range['A1', EmptyParam].Formula := 123.45; ASheet.Range['A2', EmptyParam].Formula := 0;

// проверяем

ASheet.Range['B1', EmptyParam].Formula := VarIsClear(ASheet.Range['A1', EmptyParam].Value2); ASheet.Range['B2', EmptyParam].Formula := VarIsClear(ASheet.Range['A2', EmptyParam].Value2); ASheet.Range['B3', EmptyParam].Formula := VarIsClear(ASheet.Range['A3', EmptyParam].Value2);

// Записали в ячейку информацию и проверяем, что вернет нам функция VarIsClear

// Запишем в A3 пустой текст, а в A1 очистим форматы

ASheet.Range['A1', EmptyParam].ClearFormats; ASheet.Range['A3', EmptyParam].Formula := '';

// проверим

ASheet.Range['B1', EmptyParam].Formula := VarIsEmpty(ASheet.Range['A1', EmptyParam].Value2); ASheet.Range['B2', EmptyParam].Formula := VarIsEmpty(ASheet.Range['A2', EmptyParam].Value2); ASheet.Range['B3', EmptyParam].Formula := VarIsEmpty(ASheet.Range['A3', EmptyParam].Value2);

// После записи пустой строки ячейка так и осталась "пустой"

// Очистим содержание всех ячеек и посмотрим, что получилось

ASheet.UsedRange[lcid].ClearContents; ASheet.Range['B1', EmptyParam].Formula := VarIsEmpty(ASheet.Range['A1', EmptyParam].Value2); ASheet.Range['B2', EmptyParam].Formula := VarIsEmpty(ASheet.Range['A2', EmptyParam].Value2); ASheet.Range['B3', EmptyParam].Formula := VarIsEmpty(ASheet.Range['A3', EmptyParam].Value2);

// Видно, что теперь все ячейки "пустые" (нет данных).

Чтобы радикально очистить ячейки (данные, форматы, примечания и т.д.), можно вызвать метод Clear.

Clear Method

ClearContents Method

ClearFormats Method



Содержание раздела