Проблемы с Excel

mtihonovmtihonov Павлодар, Казахстан
отредактировано 14:25 Раздел: FastScript
Выполняю скрипт

var
Excel, Book, Sheet: Variant;

begin
Excel := CreateOLEObject('Excel.Application');
Book := Excel.WorkBooks.Add;
Book.WorkSheets[3].Delete;

на некоторых машинах, в остновном с Win98 и Excel97 не выполняется последняя строчка. Дает ошибку (это FastScript овская ошибка - OLE error 80020009: WorkSheets).
Т. е. не могу обращать с листам по индексу, а надо...
Также не выполняется следующая строка
Book.ActiveSheet .Range.Font.Size := 12;
и это тоже не на всех машинах, но в тоже время строка
Book.ActiveSheet .Range.Font.Size := '12';
выполняется всегда. В чем дело, может кто подскажет?




Комментарии

  • отредактировано 14:25
    Проблема скорее всего в самом OLE так, как в старых версиях доступ к листам осуществялся иначе.
  • Andrew_ShAndrew_Sh г.Минск
    отредактировано 14:25
    mtihonov написал:
    Выполняю скрипт

    .....
    Book.WorkSheets[3].Delete;

    на некоторых машинах, в остновном с Win98 и Excel97 не выполняется последняя строчка. Дает ошибку (это FastScript овская ошибка - OLE error 80020009: WorkSheets).
    ....
    Попробуйте вместо
    Book.WorkSheets[3].Delete;
    

    использовать
    Book.WorkSheets.Item[3].Delete;
    

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.