Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: COM объекты в PHP
 
 автор: dert   (08.11.2006 в 11:31)   письмо автору
 
 

Есть такой код для открытия Excel документа, и добавления записи в него:

<?php
$xls 
= new COM("Excel.Application");  
$xls->Application->Visible 0;
$xls->Workbooks->Open("e.xls"); 
    
$range=$xls->Range("A1");            
    
$range->Value "1-ая строка”;

//Функция сохранения изменений
$xls->Workbooks[1]->SaveAs("e.xls");

$xls->Quit();                        
$xls->Release();                     
$xls = Null;
$range = Null;
?>

При запуске скрипта все создается и записывается, но Excel требует подтверждения типа сохранить изменения и кнопки ДА или НЕТ, Вопрос как сделать, чтобы изменения сохранялись без ручного подтверждения?
Очень нужно!!!

   
 
 автор: targa   (08.11.2006 в 13:41)   письмо автору
 
   для: dert   (08.11.2006 в 11:31)
 

Посмотрел - вроде все правильно.
Правда у меня SaveAs делает не WorkBook а сам Excel, т.е вот так:


$xls->SaveAs("e.xls");


Интересно: Windows-хостинг или умудрились запустить под Линуксом?

   
 
 автор: dert   (08.11.2006 в 14:49)   письмо автору
 
   для: targa   (08.11.2006 в 13:41)
 

хостинг Windows

   
 
 автор: dert   (08.11.2006 в 15:36)   письмо автору
 
   для: dert   (08.11.2006 в 14:49)
 

Еще вопрос по этой теме:

Какой командой можно сделать автофильтр через COM объекты для диапазона ячеек скажем A1:J1 ?

   
 
 автор: targa   (08.11.2006 в 17:59)   письмо автору
 
   для: dert   (08.11.2006 в 15:36)
 

Не знаю. Сам автофильтрами не пользовался.

Но попробуйте так:
создайте (откройте нужный) файлик
включите запись макроса
сделайте нужные действия
остановите запись макроса
посмотрите полученный VBA-код
подгоните полученное "под себя"

Я обычно так и делал :)

   
 
 автор: dert   (09.11.2006 в 15:00)   письмо автору
 
   для: targa   (08.11.2006 в 17:59)
 

Может кто конкретнее знает?
Или никто не работал с COM-объектами?
Может cheops знает

такая конструкция не хочет работать:
$r=$xls->Range("A6:J6");
 $r->Select();
 $r=$xls->Selection();
 $r->AutoFilter;

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования