|
Айхрень...
306 / 176 / 7
Регистрация: 02.06.2009
Сообщений: 1,077
|
|
Работа с Word/Excel через Ole/иные способы20.11.2009, 12:29. Показов 36214. Ответов 23
Метки нет (Все метки)
Добрый день, товарищи.
Да, много читал всего интересного в Интернет по этому вопросу - и тут, и тут... Но это всё мне не подходит, точнее сказать следующе: 1. в первом случае не понятно, какая библиотека используется. В стандартной комплектации Windows SDK её нет, возможно она под Борланд? Короче говоря этот способ уместен, если только есливзять чистый COM/OLE, но это достаточно длительное время займёт - изучение этого... 2. Вторая статья - интересная, но вываливает мне не один десяток ошибок... Да и к тому же там никак под 2003. или даже под 2000й офис сделана статья, а под 2007 не пашет, так как имена библиотек уже изменились... Разбирался с этим месяц назад - уже подзабыл маленько... В общем, просьба такая: 1. Если у вас есть хорошие примерчики для Ole, то скиньте - хоть подразобраться что к чему 2. Если есть примеры со вторым способом - то тоже было бы неплохо на них посмотреть, чтобы понять - в чём не прав я... 3. Может ещё какие есть варианты? Но нужно исходить из того, что программу пишу в Visual C++ c использованием WinAPI...
1
|
|
| 20.11.2009, 12:29 | |
|
Ответы с готовыми решениями:
23
Работа с документом Word через Ole в Delphi Работа с Excel через OLE Иные способы выхода в интернет |
|
4218 / 3418 / 396
Регистрация: 15.06.2009
Сообщений: 5,818
|
||||||||||||||||
| 21.11.2009, 23:39 | ||||||||||||||||
|
Работаю 2-м способом, т.е.через #import, ADO.
Правда, офис не из новых, 2000, и ХР (т.е.2002). И среда разработки Visual Studio 6.0, SP5 Вот начало: -------------------------- файл office.h
файл office2K.h
файл office2K2.h
MSO2000 и пр. - мои препроцессорные константы, в настройках проекта
1
|
||||||||||||||||
|
0 / 0 / 0
Регистрация: 19.01.2010
Сообщений: 11
|
|
| 20.01.2010, 22:11 | |
|
Вот у меня тоже проблемка, только с вордом... Пробовала писать представленные тут коды, с единым уточнением - изменяю пути к файлам типа excel9.olb, но для ворда. Вижу это решение уже не раз и пробовала на 2-х различных компьютерах (так получилось =) ) Оба раза выдало ошибку, типа "не нахожу я ваши файлики в этом месте!". Попробовала сама найти эти файлы и их там таки нет! =(
То ли я совсем плохо соображаю, то ли не пойму совсем =( Эти файлы стандартные или я пропустила самую важную часть всех перечитанных статей - о том, что их выкачивают? Или может они варьируют свое местонахождение в зависимости от версии? Вообще может есть какая-то библиотека, которая дает возможность читать (мне только это надо) тексты из вордовских файлов, может что-то на подобии как в делфях?
0
|
|
|
0 / 0 / 0
Регистрация: 19.01.2010
Сообщений: 11
|
|
| 26.01.2010, 19:16 | |
|
Разобралась =)
Только вот теперь мучает меня такой вопрос: при подключении и компиляции проекта все супер и окей, а вот будет ли так же все супер и окей в том случае, если я пишу приложение с расчетом на различные машины, т.е. Word и Excell могут там быть установлены не на диск С:, как по умолчанию или не в ту папку. Т.о. вылетит ошибка или как?
0
|
|
|
2 / 2 / 0
Регистрация: 21.11.2008
Сообщений: 67
|
|
| 11.02.2011, 17:08 | |
|
0
|
|
|
Айхрень...
306 / 176 / 7
Регистрация: 02.06.2009
Сообщений: 1,077
|
|
| 12.02.2011, 00:04 [ТС] | |
|
Goran71, загляни в мою соседнюю тему, я там привёл пример.
Чуток разница в #import - другие пути, но в целом принцип остался тем же. Только вот у меня с тем же 2010м экселем возникли траблы...
0
|
|
|
nike1987
|
||||||
| 28.06.2011, 11:11 | ||||||
|
Всем привет.У меня вопрос по редактированию таблиц в Ворде.Не могу понять как писать значения в колонках.И вообще есть ли более менее нормальное описание функций с примерами.Нашёл только вот это http://msdn.microsoft.com/en-u... 54954.aspx Но там вообще ничего не понятно=((((.Буду очень признателен если скинете каки-нить примерчики с работой в ворде.
|
||||||
|
14 / 14 / 4
Регистрация: 10.07.2010
Сообщений: 130
|
|
| 29.06.2011, 20:36 | |
|
а зачем так издеваться? не легче ли сделать так: Ctrl+W->Add Class...->From a Type Library...->папка с ворд->Office12 и выбираем MSWORD.OLB
0
|
|
|
1 / 1 / 0
Регистрация: 05.09.2013
Сообщений: 45
|
|
| 26.03.2015, 10:31 | |
|
Господа звиняйте за некропост но я таки интересуюсь знать вот какой проблемой.
Библиотеки офиса подключаются директивой ПРЕпроцессора #import и в зависимости от версии офиса они могут быть различны. Далее - пути по которым они располагаются так же могут быть различны - зависит от извращенности хозяина ОС (назвать папку Program Files как-то по другому, в х64 вообще она называется Program Files (x86) итд итп). Решить эту проблему можно пхнув нужные либы например на диск С в какую-либо отдельную папку и молиться о том что нужная версия офиса у пользователя имеется. Но что делать если это не так? Можно ли это как-то проверить или позволить программе спокойно свалиться? И еще вопрос. Мне нужно чтобы в зависимости от извращений пользователя (стоит 2 версии офиса - 2003 и 2010) программа выбирала какую-либо одну, например, ту которая запускается по-умолчанию. Так же если у пользователя отсутствует версия 2003 но есть 2010 импортировались те либы которые подходят под установленную версию офиса. Как это можно реализовать? Заранее спасибо.
0
|
|
|
2 / 2 / 1
Регистрация: 08.02.2020
Сообщений: 215
|
|||||||||||
| 16.02.2020, 01:25 | |||||||||||
|
А как быть, если я файла MSO.DLL в своем офисе вообще не нахожу? Офис 2013, если не ошибаюсь. Есть куча ДЛЛ с похожими названиями, какая нужна?
Добавлено через 21 минуту А нет, нашлась. У меня офис 2013. Делаю файл office.h
Студия пока не стоит, попробовал приведенный выше код в CodeBlocks - виснет намертво еще при компиляции. Или строго Вижуал Студия нужна?
0
|
|||||||||||
|
4218 / 3418 / 396
Регистрация: 15.06.2009
Сообщений: 5,818
|
||||||
| 16.02.2020, 19:54 | ||||||
|
Сейчас у меня VS 2017, Office 2013 (64) и такие настройки, работают (Windows 10/64)
0
|
||||||
|
2 / 2 / 1
Регистрация: 08.02.2020
Сообщений: 215
|
|
| 17.02.2020, 01:21 | |
|
А что мне писать в начале программы? Я правильно понимаю, что можно просто сразу написать #include "office2K13.h" и никакой office.h не упоминать? Ну, если я правильно понимаю смысл файла office.h, он служит для выбора верной версии офиса. Но это все равно ненадежно - все офисы не перечислишь, и не факт, что даже если версия на другом компе та же, она установлена с путями по умолчанию.
З.Ы. А где тут про Ворд?
0
|
|
|
2 / 2 / 1
Регистрация: 08.02.2020
Сообщений: 215
|
||||||||||||||||
| 18.02.2020, 11:15 | ||||||||||||||||
|
Попробовал в Вижуал Студии 2015, результатов не понял
![]()
![]() Добавлено через 10 минут З.Ы. Наконец программа увидела модуль, получил кучу ругани Так тоже пробовал, то же самое.
0
|
||||||||||||||||
|
4218 / 3418 / 396
Регистрация: 15.06.2009
Сообщений: 5,818
|
|||||||
| 18.02.2020, 15:42 | |||||||
|
Код - рабочий (версия 2013)
0
|
|||||||
|
2 / 2 / 1
Регистрация: 08.02.2020
Сообщений: 215
|
||||||
| 19.02.2020, 01:59 | ||||||
|
То была какая-то ошибка - походу компилятор не находил файл. Когда я его ему показал, начал ругаться
А сама простейшая программа и содержимое файла есть в сообщении выше Вроде то же самое написано.Добавлено через 3 часа 51 минуту А если прямо так записать в основную программу, чтобы проще было менять, должно работать?
196 ошибок
0
|
||||||
|
2 / 2 / 1
Регистрация: 08.02.2020
Сообщений: 215
|
||||||
| 20.02.2020, 01:31 | ||||||
|
Попробовал по вот этой статье (https://www.technical-recipes.... xcel-in-c/) - ошибок вроде не выдает. Компилируется, запускается, и не делает ничего
Выскакивает консолька с предложением нажать любую кнопку, Эксель не выскакивает.
0
|
||||||
|
2 / 2 / 1
Регистрация: 08.02.2020
Сообщений: 215
|
|
| 29.02.2020, 11:27 | |
|
Снова вернулся к этой программке, результат тот же - никакого. Может быть, кроме самого кода еще нужно какие-то настройки в ВижуалСтудии сделать?
0
|
|
|
0 / 0 / 0
Регистрация: 28.01.2019
Сообщений: 6
|
|||||||||||
| 14.05.2021, 02:26 | |||||||||||
|
Приветствую.
Попытался тоже подключиться к экселю из Visual Studio. Использую OFFICE 2016 и VS 2019. Сейчас имею следующий код, который почему-то не работает:
1. Все файлы из #import я поместил в папку с проектом и он успешно создал версии .tlh и .tli (к сожалению не знаю как тут пользоваться спойлерами и картинками, так что вот ссылка https://prnt.sc/12w9od5) 2. Эти файлы не пустые и вполне себе читаемые: (рандомный кусок кода из mso.tlh
При этом красным подчёркивается единственная строчка с pXL->Visible = true; (примерно 25 строка кода) 4. Помимо этого имеется 500+ ошибок E0102 "нестандартное опережающее объявление перечисляемого типа", но выглядят эти ошибки так, что сами пропадут, как только будет решена основная из пункта 3. Помогите, пожалуйста, разобраться в этом. Настройки VS стоят исходные, ничего не менял (разве что поменял кодировку с Юникода на многобайтовую, но что-то мне подсказывает, что не в этом проблема), установил буквально позавчера после сноса системы. В Visual Studio Installer постарался выбрать все пункты, которые могут быть связанны с MS Office, даже не относящиеся к с++ ![]() Добавлено через 10 минут Последняя проблема была решена! Всё что нужно было сделать - это дать абсолютное имя файла в #import. Теперь новая ошибка ![]() Звучит она так: "Возникло необработанное исключение по адресу 0x00007FF9B225A839 в работа с экселем.exe: исключение Microsoft C++: _com_error по адресу памяти 0x000000BB1E0FF700." (25 строка отказывалась компилироваться, так что я её удалил, а эта ошибка возникла в 24 строке)
0
|
|||||||||||
|
0 / 0 / 0
Регистрация: 28.01.2019
Сообщений: 6
|
|
| 14.05.2021, 10:09 | |
|
На всеобщее (надеюсь) счастье, наткнулся на решение этой проблемы на сайте Microsoft, вот ссылка:
https://docs.microsoft.com/en-... cel-from-c Импорты не требуются, но, как я понимаю, требуется установленный на комп эксель.
0
|
|
| 22.12.2023, 22:37 | ||
C:\Program Files (x86)\Microsoft Office\Office14 но там нету такой библиотеки. Офис у меня 10ый.
0
|
||
| 22.12.2023, 22:37 | |
|
Помогаю со студенческими работами здесь
20
Иные способы установки Windows XP Работа в Word через WBA в Excel Ole excel и word Работа с word через excel (передача строки)
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем.
. . .
|
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|