У меня работает следующее:
var
Excel: ExcelApplication;
Workbook: ExcelWorkbook;
Sheet: ExcelWorksheet;
begin
Excel := CoExcelApplication.Create;
Workbook := Excel.Workbooks.Add(EmptyParam, LOCALE_USER_DEFAULT);
Sheet := Workbook.ActiveSheet as ExcelWorksheet;
Sheet.Range['A1','A1'].EntireRow.Delete(EmptyParam);
end;
Обратите внимание, что я использую раннее связывание, которое значительно облегчает жизнь. Просто включите модуль Excel2000, и этот код будет работать для вас.
Использование раннего связывания позволит вам перехватывать подобные ошибки во время компиляции, а не диагностировать ошибки во время выполнения.
Если вы хотите продолжить с поздним связыванием, то, как утверждает Сертак, это работает:
Excel.ActiveSheet.Rows[1].Delete;
Не забудьте сначала создать рабочую книгу!