Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.03.2012, 15:59   #1
Yan
 
Аватар для Yan
 
Регистрация: 19.04.2009
Сообщений: 5
Вопрос JavaScript + MS Excel 2010

Всем доброво времени суток!
В процессе работы некоторого скрипта, который создает отчет в формате .xls (MS Ecxel 2003), вот код:
Код:
var Excel;
        function OpenExcel() //метод, открывающий excel файл  
        {
            var Book;
            Excel = new ActiveXObject("Excel.Application");
            var Book = Excel.Workbooks.Open("какойто путь к шаблону");
            Sheet = Book.ActiveSheet;
        }
...
выдается ошибка в строке "Excel = new ActiveXObject("Excel.Application"); " на машинах с 2010 MS Office`ом, на 2003 все прекрасно работает! Подскажите как адаптировать скрипт на работу с MS Excel 2010?
И как сделать возможным определение скриптом установленной версии Excel на клиентской машине?
Заранее спасибо!
Yan вне форума Ответить с цитированием
Старый 28.03.2012, 20:32   #2
Naive
Раздолбайских Дел
Старожил
 
Аватар для Naive
 
Регистрация: 22.05.2009
Сообщений: 3,828
По умолчанию

Код:
 Excel = new ActiveXObject("Excel.Application");
Эта хрень работает только в ИЕ6 и младше, нормальные браузеры блокируют это с точки зрения безопасности. Тупость этой фигни заключается в том, что она запускает на клиентской машине любой *.exe,
возможно нормальные современные программы просто дополнительно блочат косяк своего "младшего брата")
Alar, верни репу!
Naive вне форума Ответить с цитированием
Старый 28.03.2012, 21:53   #3
Fenex
Форумчанин
 
Аватар для Fenex
 
Регистрация: 15.02.2012
Сообщений: 821
По умолчанию

гыыы))) помню времена, когда на js можно было писать файловые менеджеры...
^-.-^ My GitHub
Fenex вне форума Ответить с цитированием
Старый 28.03.2012, 22:30   #4
Naive
Раздолбайских Дел
Старожил
 
Аватар для Naive
 
Регистрация: 22.05.2009
Сообщений: 3,828
По умолчанию

Цитата:
Сообщение от Fenex Посмотреть сообщение
гыыы))) помню времена, когда на js можно было писать файловые менеджеры...
не могу представить даже... Однако, у меня есть учебник бородатых лет, где описывается работа с файловой системой (через браузер!)

сейчас даже верстать с ajax трудно - большинство блокирует обращение к своей же папке как кроссдомен))
Alar, верни репу!
Naive вне форума Ответить с цитированием
Старый 29.03.2012, 12:26   #5
Yan
 
Аватар для Yan
 
Регистрация: 19.04.2009
Сообщений: 5
По умолчанию

Цитата:
Сообщение от Naive Посмотреть сообщение
Код:
 Excel = new ActiveXObject("Excel.Application");
Эта хрень работает только в ИЕ6 и младше, нормальные браузеры блокируют это с точки зрения безопасности. Тупость этой фигни заключается в том, что она запускает на клиентской машине любой *.exe,
возможно нормальные современные программы просто дополнительно блочат косяк своего "младшего брата")
А как тогда можно обойти эту ситуацию? Может какие другие методы или функции?
Yan вне форума Ответить с цитированием
Старый 29.03.2012, 12:36   #6
Naive
Раздолбайских Дел
Старожил
 
Аватар для Naive
 
Регистрация: 22.05.2009
Сообщений: 3,828
По умолчанию

Лучше данную задачу скинуть на сервер — в гуглях есть масса готовых парсеров.
А на страницу уже передавать удобочитаемый json и работать с ним.
Alar, верни репу!
Naive вне форума Ответить с цитированием
Старый 29.03.2012, 13:01   #7
=master=
Форумчанин
 
Регистрация: 26.03.2012
Сообщений: 665
По умолчанию

Цитата:
выдается ошибка в строке "Excel = new ActiveXObject("Excel.Application"); " на машинах с 2010 MS Office`ом
Интересно, а какую ошибку выдает?
=master= вне форума Ответить с цитированием
Старый 29.03.2012, 15:51   #8
Yan
 
Аватар для Yan
 
Регистрация: 19.04.2009
Сообщений: 5
По умолчанию

Цитата:
Сообщение от =master= Посмотреть сообщение
Интересно, а какую ошибку выдает?
Ошибка: Невозможно создание объекта сервером программирования объектов.
Код: 0
Yan вне форума Ответить с цитированием
Старый 29.03.2012, 16:19   #9
=master=
Форумчанин
 
Регистрация: 26.03.2012
Сообщений: 665
По умолчанию

Под ИЕ можно попробовать добавить ваш сайт в надежные узлы.
=master= вне форума Ответить с цитированием
Старый 30.03.2012, 09:54   #10
Yan
 
Аватар для Yan
 
Регистрация: 19.04.2009
Сообщений: 5
По умолчанию

Цитата:
Сообщение от =master= Посмотреть сообщение
Под ИЕ можно попробовать добавить ваш сайт в надежные узлы.
Добавил в надежные узлы, но это не дало никаких результатов, так как страница со скриптом тянется программой с сервера.
Снизил уровень безопасности в надежных узлах и все заработало!
Всем большое спасибо!
Yan вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
EXCEL 2010 Пропадают примечания PIK Microsoft Office Excel 8 24.12.2012 17:12
Почему Excel 2010 выполняет поиск гораздо медленнее чем Excel 2003 Sprat Microsoft Office Excel 1 25.10.2011 05:34
Excel 2010 valerij Microsoft Office Excel 2 15.05.2011 21:47
скролл в excel 2010 geg Microsoft Office Excel 1 25.01.2011 20:10
Скорость исполнения макроса в Excel-2010 намного ниже, чем в Excel-2003 Павел+ Microsoft Office Excel 5 29.12.2010 03:28