Запись в Excel через COM

4you

еееххххх....
Запись в Excel через COM

Подскажите где искать проблему.
Имею простейший код записи в Excel:
PHP:
$myExcel = new COM("Excel.application") or Die ("Did not connect");
$myWorkbook = $myExcel->Application->Workbooks->Open("c:\\test.xls") or Die ("Did not open"); 

print "Application name:{$myExcel->Application->value}<BR>" ;
print "Loaded version: {$myExcel->Application->version}<BR>";

$myCurrentSheet = $myWorkbook->Worksheets(1);
$myCurrentSheet->Activate;
 
echo 'Current value is: '.$myCurrentSheet->Cells(3,3)->value;
$myCurrentSheet->Cells(3,3)->value = 'test';
  
$myExcel->Application->ActiveWorkbook->Close("False");    
$myExcel = null;
Проблема в том, что читается Excel "на ура", а вот чтобы записать в него, то никак. При попытке записи броузер подвисает и все. Убиваю процесс и тогда вываливается с ошибкой что процесс не найден (это логично).

Если закомментировать строку (непосредственно запись в Excel):
PHP:
$myCurrentSheet->Cells(3,3)->value = 'test';
то все работает отлично.

Заранее благодарен
 

DiMA

php.spb.ru
Команда форума
делай ->SaveAs с уникальным именем, иначе он выдает окошко "действительно сохранить?", на которое никто никогда не нажмет и приложение кажется зависшим
 

4you

еееххххх....
Автор оригинала: DiMA
делай ->SaveAs с уникальным именем, иначе он выдает окошко "действительно сохранить?", на которое никто никогда не нажмет и приложение кажется зависшим
Спасибо за новодку. Добавил метод SaveAs в начало скрипта (чтобы делал дубликат оригинального документа) и в конце метод Save (чтобы сохранил изменения).
Работает.
 
Сверху