За последние 24 часа нас посетили 17187 программистов и 1692 робота. Сейчас ищут 988 программистов ...

[PHP] COM("Excel.Application")

Тема в разделе "Прочие вопросы по PHP", создана пользователем Ivan, 9 апр 2009.

  1. Ivan

    Ivan Активный пользователь

    С нами с:
    22 дек 2008
    Сообщения:
    4
    Симпатии:
    0
    Здравствуйте.
    Открываю excel-файл с пустой таблицей(шаблон)
    PHP:
    1.  
    2. $xls_template = new COM("Excel.Application");
    3. $xls_template -> Workbooks -> Open($tmp_name_tmpl);
    4.  
    Выбираю лист в этом файле
    PHP:
    1.  
    2. $sheets_tmpl = $xls_template -> Worksheets(1);
    3. $sheets_tmpl -> activate;
    4.  
    И заполняю определенные ячейки этой таблицы.
    После заполнения сохраняю изменения в новом файле
    PHP:
    1. $xls_template -> Workbooks[1]->SaveAs("C:/test1.xls");
    Подскажите пожалуйста, можно ли при открытии шаблона(в котором находится пустая таблица), создать новые листы в открытом документе, в которых была бы эта же таблица(пустая), а не чистые листы
     
  2. Вльдемар

    Вльдемар Активный пользователь

    С нами с:
    20 май 2006
    Сообщения:
    635
    Симпатии:
    0
    Адрес:
    Белхород
    PHP:
    1. <?php
    2.  $tmp_name_tmpl =  'd:\1.xls';
    3.  $xls_template = new COM("Excel.Application");
    4.  $xls_template->Workbooks->Open($tmp_name_tmpl);
    5.  
    6.  $sheets_tmpl = $xls_template -> Worksheets(1);
    7.  $sheets_tmpl -> activate;
    8.  
    9.  $sheets_tmpl->Range("A1:Z1000")->Select;
    10.  $xls_template->Selection->Copy;
    11.  
    12.  $sheets_tmpl2 = $xls_template -> Worksheets(2);
    13.  $sheets_tmpl2 -> activate;
    14.  $sheets_tmpl2->Range("A1")->Select;
    15.  
    16.  $xls_template->Selection->PasteSpecial();
    17.  
    18.  $sheets_tmpl2->Range("A1")->Select;
    19.  
    20.  $xls_template->Visible = true;
    21. ?>
    22.  
    По идее нудно в $xls_template->Selection->PasteSpecial(); передать такие параметры (Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False), но биться ща некогда. Вроде без параметров работает