Форум программистов, компьютерный форум, киберфорум
C/C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.96/27: Рейтинг темы: голосов - 27, средняя оценка - 4.96
0 / 0 / 0
Регистрация: 31.10.2014
Сообщений: 8

Открыть файл xlsx (2007), обработать информацию и сохранить в аналогичный файл. Какие библиотеки использовать?

14.11.2014, 00:57. Показов 6378. Ответов 24
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день друзья, суть вопроса такова: мне нужно открыть файл *.xlsx(именно с 2007 офиса), обработать информацию и сохранить уже обработанную информацию в Аналогичный (по структуре) файл. Проблема в том, что я не могу найти нормальной документации по работе с файлами 2007го офиса. Можете ли вы дать ссылки на полезную информацию или разъяснить(если есть желание) что мне делать и как лучше и менее затратно(по времени) сделать.
Меня интересует следующая информация:
1) Какие именно библиотеки подключать для работы с 2007 Офисом
2) Как открыть файл.
3) Как считывать\записывать информацию.

Буду искрине благодарен.

Добавлено через 33 минуты
А еще лучше было бы с использованием библиотек
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.11.2014, 00:57
Ответы с готовыми решениями:

Как открыть файл xlsx и сохранить в txt?
Написать консольное windows приложение на Visual C++ со следующим функционалом: - на вход программы (в виде параметров командной строки)...

Открыть файл *.xlsx в 0pe 0фи. Просто открыть файл
Друзья! Вот сам файл. Создан MS Office. Он не открывался в 14-м году, он не открывается сейчас. Они там что делают, спят что ли? Файл-то...

Открыть файл и сохранить туда любую информацию
У меня небольшой вопрос. Как с помощью сишных функций работы с файлами, организовать открытие файла и сохранение туда любой информации?? ...

24
183 / 181 / 66
Регистрация: 15.02.2015
Сообщений: 515
15.02.2015, 19:31
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Izual Посмотреть сообщение
На codeproject нашли пример?.. Там же показано как..
может быть, я похожих примеров столько уже повидал, на том же msdn их полно. Вставил этот код просто, чтобы обозначить метод, которым пользуюсь. Мой вариант кода сейчас на стадии экспериментов.

Цитата Сообщение от Izual Посмотреть сообщение
...естественно не забывайте release и CoUninitialize.
Само собой, в деструкторе класса-оболочки они хорошо смотрятся.

Цитата Сообщение от Izual Посмотреть сообщение
Вообще вы сами контролируете закрытие экселя, если ваша программа сделала всё что надо, и вам нужно оставить эксель открытым...
Пока работает приложение, в котором существует указатель на интерфейс (IDispatch*), я контролирую его и закрывать не собираюсь. Если я отключусь от интерфейса (Release()), то и Excel закроется, так как кол-во соединений с его интерфейсом станет равным нулю. То же самое произойдёт если завершить приложение не отключившись. Однако, если не вызвать CoUninitialize() и завершить приложение, то Excel.exe остаётся висеть в процессах даже после закрытия самого окна.
0
 Аватар для Izual
143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
15.02.2015, 19:59
Цитата Сообщение от Operok Посмотреть сообщение
Однако, если не вызвать CoUninitialize() и завершить приложение, то Excel.exe остаётся висеть в процессах даже после закрытия самого окна.
Почему не вызывать? Вообще эта функция выгрузки COM библиотеки(если я не ошибаюсь), и ни как не связанна с тем что excel остаётся висеть в диспетчере задач.
Как я уже написал выше, пробелема в этом:
Цитата Сообщение от Izual Посмотреть сообщение
L"Quit"(для самой excel)
1
183 / 181 / 66
Регистрация: 15.02.2015
Сообщений: 515
15.02.2015, 23:20
Цитата Сообщение от Izual Посмотреть сообщение
Почему не вызывать? Вообще эта функция выгрузки COM библиотеки(если я не ошибаюсь), и ни как не связанна с тем что excel остаётся висеть в диспетчере задач.
Это получалось случайно, и связано с тем что не был вызван метод Release и CoUninitialize, в результате процесс приходилось убивать руками. Но опять же это просто была допущена ошибка.

Цитата Сообщение от Izual Посмотреть сообщение
L"Quit"(для самой excel)
Я не вызываю этот метод.

Добавлено через 2 часа 38 минут
Цитата Сообщение от Operok Посмотреть сообщение
...
Понял свою ошибку. Все эксперименты я проводил с пустым Excel.Application (без открытых книг), в этом случае действительно, если освободить указатель на интерфейс, то Excel закрывается, если же открыта хоть одна книга, то приложение (Excel) работает и после завершения программы, запустившей его.
0
0 / 0 / 0
Регистрация: 19.03.2015
Сообщений: 1
19.03.2015, 15:15
Добрый день. Вмешиваюсь слегка не по теме, но мне нужно,что бы кто-то написал небольшую прогу. Основная ее задача выбрать данные из файла *.xlsx и выгрузить их на виртуальный СОМ порт. Буду признателен если есть желание помочь.
0
 Аватар для Izual
143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
19.03.2015, 21:12
VladKo1970, вам в раздел фриланса(карьера и работа), по правилам форума мы не имеем права предлагать платные услуги в других разделах(кроме выше сказанного).
А ежели безплатно - то только своими силами изучайте и делайте.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
19.03.2015, 21:12

Открыть файл, разделить ячейку на 1000, сохранить файл, закрыть файл
Макрос должен запускаться, спрашивать - какой файл ему взять. Открыть его, разделить определенную ячейку на 1000, сохранить файл. ...

Можно ли в уже откомпилированной программе открыть pas-файл, изменить его, сохранить и использовать дальше?
Добрый день) Такой вопрос Можно ли в уже откомпилированной программе открыть файл .pas его откоректировать сохранить и использовать дальше...

Сохранить файл в папку, а ссылку на его в БД, открыть файл по ссылке из Бд
Здравствуйте. Не получается сохранить файлы в папку Data (c записью ссылки на него в БД),а затем его открыть по данной ссылке. Задача в...

Через Ексель Открыть файл ВОРД и сохранить файл под определенным именем
Открываю через ексель файлы ворд и выполняю макрос ворд, но не получается сохранить файл под указанным именем ни такое ...

Создать файл xlsx, разметить два столбца, сохранить
Нужно создать файл xlsx в папке, которую выберет пользователь, либо на рабочем столе (по умолчанию) В файле изначально нужно разметить 2...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
25
Ответ Создать тему
Новые блоги и статьи
Транслитерация текста с кириллицы на латиницу (вариант №2)
Maks 13.11.2026
Обновленная версия ранее созданной обработки. Добавлено: - Проверка исходного текста на кириллицу, через обращение к стандартной функции "ТолькоКириллицаВСтроке" из общего модуля. . .
Часы с термометром и праздничным календарем
yariko 12.11.2026
Сегодня мы рассмотрим как можно сделать отличные многофункциональные часы. Итак, поставим конкретную задачу: разработать часы с календарем, двумя термодатчиками, выводом поздравительных сообщений. . .
Транслитерация текста с кириллицы на латиницу (вариант №1)
Maks 11.11.2026
Решил облегчить жизнь себе и коллегам админам при создании электронных почтовых ящиков для пользователей, в результате написал обработку "Транслитерация текста" с кириллицы на латиницу, а в ней. . .
Книги по геймдизайну, левел-дизайну, игровым механикам и проектированию игрового опыта
8Observer8 08.11.2026
Содержание блога | English Version 1. 2003 - 06 - Designing Virtual Worlds (1st Edition) Автор: Richard A. Bartle | Объем: 768 стр. Ссылки: Amazon . . .
Родители токсичные абьюзеры по отношению к своим детям ругают их оскорбляют не любят
zorxor 08.11.2026
Жить в атмосфере постоянных оскорблений, критики и холодности со стороны родителей — это тяжелое и болезненное испытание, которое оставляет глубокие эмоциональные раны. Токсичное и абьюзивное. . .
Как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Ответ от Джемени ИИ.
zorxor 08.11.2026
Джемени, как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Многие люди, возвращаясь домой, сразу переодеваются в максимально свободную одежду или вовсе предпочитают. . .
Паттерн очереди действий/команд (Action / Command Queue). Система очереди действий и кат-сцен с SDL3 Callbacks, cglm и OpenGL
8Observer8 07.11.2026
Содержание блога | English Version Руководство для начинающих по реализации паттерна очереди действий/ команд (Action / Command Queue) на C++ (C++20) с использованием официального SDL3 Callbacks. . .
Проверка полного ФИО в типовом справочнике
Maks 07.11.2026
Решение реализовано в конфигурации КА2, на примере справочника "КонтактныеЛицаПартнеров". Задача: Запрет инициалов. Не допускаеть использование сокращений вида "И. И. ", "И. И. ", "И И" и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru