PHP и Excel через COM - может, кто-то встречался с этим....

-SkyNet-

Новичок
PHP и Excel через COM - может, кто-то встречался с этим....

Приветы всем! Столкнулся с задачей автоматического переформатирования листа xls в текст csv. Вроде бы, все должно быть просто:
1) создаем объект:
PHP:
$excel = new COM("Excel.sheet") or Die ("Can't create com object");
$excel->Application->Visible = 1;
2) открываем файл xls:
PHP:
$workbook = "C:\\test1.xls";
$wkb = $excel->application->Workbooks->Open($workbook) or Die ("Did not open");
3) сохраняем:
PHP:
$excel->Application->ActiveWorkbook->SaveAs("Ourtest1","format");
потом закрываем, но это неважно. Идиотская суть вопроса: что ставить вместо "format"!?? я себе уже мозг давно выношу, на всех ресурсах по Excel Object model и VB вижу, что цсвэшный "format"="xlCSV", но при такой и любой другой замене (типа "csv") выдается ошибка:

Warning: (null)(): Invoke() failed: Ошибка. Source: Microsoft Excel Description: Невозможно получить свойство SaveAs класса Workbook in c:\htdocs\exchange\ex1.php on line

как быть, подскажите пожааалуйста!))
 

Денч

Новичок
Немножко не в тему: если надо просто читать xls, скажем, для прайса, то поищи в инете по "Spreadsheet_Excel_Reader".
Не помню просто, где именно лежит, но это класс для работы с xls напрямую. Немножко вникнуть, как его юзать, и можно через него сохранять в том же формате csv, если это необходимо...
 

-SkyNet-

Новичок
Нда, негусто :) тем не менее, спасибо. Но, елки-палки, насколько было бы проще - ведь метод SaveAs имеет за десяток параметров, открывающий все возможные возможности сохранения - там и под паролем, и много чего, о чем и думать забыли... :)

Тем не менее, благоарю за совет, хотя Spreadsheet_Excel_Reader нашел раньше публикации сего топика, просто мне данное решение показалось черезчур громоздким...
 
Сверху