Форум: "Основная";
Текущий архив: 2003.06.26;
Скачать: [xml.tar.bz2];
ВнизИспользование Excel из Delphi Найти похожие ветки
← →
Dmitry111 (2003-06-09 13:45) [0]Добрый день всем!
Я столкнулся с такой проблемой: у меня на компе установлен офис XP и 97.
Я из своей проги делаю:
Var
Excel: Variant;
begin
...
Excel := CreateOleObject("Excel.Application.8");
...
end;
Хочу работать с 97 Excel"ем но создается все равно Excel XP...
пробовал и Excel := CreateOleObject("Excel.Application"); - результат тот-же...
Как быть?
← →
AbrosimovA (2003-06-09 13:57) [1]А как ты определяешь, что создан файл Excel XP?
← →
Dmitry111 (2003-06-09 14:25) [2]ну, например, показываю приложение:
...
Excel.visible:=true;
...
← →
DrPass (2003-06-09 14:26) [3]Скорее всего, никак - если ты ставил ХР после 97, то он поменял пути к СОМ-объектам в реестре на свои библиотеки
← →
Dmitry111 (2003-06-09 14:28) [4]Да я готов поставит их в любой последовательности... Проблема в том, что у них (XP и 97) одинаковый GUID...
← →
AbrosimovA (2003-06-09 14:35) [5]А для чего ставить две версии офиса?
← →
DrPass (2003-06-09 14:43) [6]Поставь сначала ХР, потом 97. По Excel.Application будешь вызывать 97, по Excel.Application.10 - Excel 2002, ведь девяносто седьмая не сможет переписать эту запись. А можно и ручками путь подправить в реестре в ключе LocalServer32 на нужную Экселину. Хотя и правда, первое, что приходит в голову - "нафиг два офиса?"
← →
Dmitry111 (2003-06-09 14:44) [7]есть куча макросов, написанных в 97 офисе, а по ХР они работают некорректно... т.к. макросы большие и искать в них все "несовместимости" очень тяжело, то проще всегда использовать 97 офис...
← →
Dmitry111 (2003-06-09 14:46) [8]А где этот самый параметр LocalServer32? и как его изменение повлияет на остальную работу, например, открытие файла в обычном порядке?
← →
AbrosimovA (2003-06-09 15:25) [9]Попробуй сменить ассоциацию для файлов Excel.
Это делается следующим образом:
Держишь палец на клавише Shift и одновременно жмешь правую кнопку мыши при наведении курсора на любом файле, например, с расширением xls. Во всплывающем меню находишь строку "Открыть с помощью" и давишь на неё. После этого можно Shift отпустить.
Увидишь окошко со списком программ, там находишь кнопку "другая...", после нажатия на которую выскакивает, наверное, известный тебе из Дельфей OpenDialog. Ищешь в нем екзешник соответствующего Excel97 и открываешь его. Тебя возвращает опять к окну со списком программ. Ставишь галочку "Всегда использовать выбранную программу" и наконец жмёшь "OK". После этого XLS-файлы должны открываться в нужной версии Excel.
← →
KSergey (2003-06-09 15:31) [10]> AbrosimovA (09.06.03 15:25)
Это никак не изменит связь с COM-объектом
← →
Dmitry111 (2003-06-09 16:37) [11]Да, KSergey совершенно прав...
← →
DrPass (2003-06-09 17:17) [12]В реестре в секции HKCR\CLSID прописаны все сервера. Ищешь ключ, у которого подключ ProgID содержит Excel.Application.8, и рядом там должен быть подключ LocalServer32 - ссылка на прогу, которая этот объект реализует.
← →
Dmitry111 (2003-06-09 19:53) [13]а как это изменение повлияет на обычную работу с Excel"ем?
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.06.26;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.024 c