![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Все тоже удаление. [D7]
P0tia © (2003-09-10 18:15:00)
На писан код, но почемуто выдает ошибку "неверный индекс". Помогите, завтра сдавать.
Excel := GetActiveOleObject("Excel.Application");
Excel.DisplayAlerts := false;
edit1.Text := IntToStr(Excel.WorkBooks[1].Sheets.Count);
i:=1;
for I := 1 to Excel.WorkBooks[1].Sheets.Count do begin
Excel.WorkBooks[1].Sheets[i].select;
if Excel.WorkBooks[1].Sheets[i].name <> "Список" then
Excel.WorkBooks[1].Sheets[i].delete;
end;
Excel.DisplayAlerts := true;
Excel := Unassigned;
Andrey V. (2003-09-11 15:57:00) [1]
Может не в тему , но припомнил что в ХР у меня не прошло название щита с пробелом (в 98 все ок), пришлось ставить "_"
P0tia (2003-09-11 15:52:00) [2]
А у меня ругается и оставляет два листа. "Список" и еще один.
Sandman25 (2003-09-10 18:34:00) [3]
У меня это сработало. Только что проверил. Только ругнулось на попытку удаления последнего остававшегося листа - "в книге должен остаться хотя бы 1 лист".
P0tia (2003-09-10 18:27:00) [4]
Все равно такаяже вещь.
Excel := GetActiveOleObject("Excel.Application");
Excel.DisplayAlerts := false;
edit1.Text := IntToStr(Excel.WorkBooks[1].Sheets.Count);
i:=1;
for i:=Excel.WorkBooks[1].Sheets.Count downto 1 do begin
Excel.WorkBooks[1].Sheets[i].select;
if Excel.WorkBooks[1].Sheets[i].name <> "Список" then
Excel.WorkBooks[1].Sheets[i].delete;
end;
Excel.DisplayAlerts := true;
Excel := Unassigned;
Sandman25 (2003-09-10 18:17:00) [5]
for i := ... downto 1