Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
|
ArhiZhek |
10.11.2011, 20:14
Сообщение
#1
|
|
Студент ![]() Группа: Участник Сообщений: 46 Регистрация: 9.10.2011 Пользователь №: 2932 Спасибо сказали: 0 раз(а) Репутация: 0
|
Подскажите пожалуйста, у меня есть программа, из нее нужно распечатать числовые данные в виде некоторой таблицы… Так вот, как мне свою программу связать с Excel чтоб значения из LineEdit, которых там много, она перекидывала в фиксированные ячейки Excel? То есть в Excel была уже созданная таблица, а программа только бы заполняла ячейки и распечатала.
Цитата(ArhiZhek @ 10.11.2011, 21:10) Link Подскажите пожалуйста, у меня есть программа, из нее нужно распечатать числовые данные в виде некоторой таблицы… Так вот, как мне свою программу связать с Excel чтоб значения из LineEdit, которых там много, она перекидывала в фиксированные ячейки Excel? То есть в Excel была уже созданная таблица, а программа только бы заполняла ячейки и распечатала. программа сделана в Qt |
|
|
|
|
silver47 |
11.11.2011, 4:12
Сообщение
#2
|
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 356 Регистрация: 1.4.2010 Пользователь №: 1584 Спасибо сказали: 40 раз(а) Репутация: 6
|
Link
|
|
|
|
|
ArhiZhek |
11.11.2011, 18:35
Сообщение
#3
|
|
Студент ![]() Группа: Участник Сообщений: 46 Регистрация: 9.10.2011 Пользователь №: 2932 Спасибо сказали: 0 раз(а) Репутация: 0
|
ясно, спасибо, по копаюсь...
|
|
|
|
|
ArhiZhek |
14.11.2011, 0:23
Сообщение
#4
|
|
Студент ![]() Группа: Участник Сообщений: 46 Регистрация: 9.10.2011 Пользователь №: 2932 Спасибо сказали: 0 раз(а) Репутация: 0
|
подскажите пожалуйста, некоторые не понятки...
Чтобы подключить библиотеку,вам необходимо в .pro файле (в каталоге с вашим проектом),дописать LIBS += -lqaxcontainer Совет: внимательно следите за создаваемыми объектами и указателями, возвращаемыми методом querySubObject(). Они не удаляются автоматически, нужно вызывать delete вручную. В противном случае будет эффективно расходоваться память, и после нескольких тысяч вызовов метода querySubObject() ваша программа и эксель в сумме займут всю память, но это полбеды - обращение к одной ячейке будет занимать секунду. Это всего лишь предостережение... (как это сделать и важно ли это?) Ну теперь собственно приступаем к кодингу.(в каком проекте срр это дело прописывать?) #include <ActiveQt/qaxobject.h> #include <ActiveQt/qaxbase.h> // получаем указатель на Excel QAxObject *mExcel = new QAxObject( "Excel.Application",this); // на книги QAxObject *workbooks = mExcel->querySubObject( "Workbooks" ); // на директорию, откуда грузить книгу QAxObject *workbook = workbooks->querySubObject( "Open(const QString&)", "C:\\q\\1\\otchet.xls" ); // на листы (снизу вкладки) QAxObject *mSheets = workbook->querySubObject( "Sheets" ); // указываем, какой лист выбрать. У меня он называется topic. QAxObject *StatSheet = mSheets->querySubObject( "Item(const QVariant&)", QVariant("topic") ); |
|
|
|
|
silver47 |
14.11.2011, 5:57
Сообщение
#5
|
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 356 Регистрация: 1.4.2010 Пользователь №: 1584 Спасибо сказали: 40 раз(а) Репутация: 6
|
Самый простой пример в приложении. Не слежу за возвращаемыми значениями, но слежу за памятью. Возможны ошибки с просонья. Очень давно ничего в эксель не выводил. Файл out.xls лучше сразу кинуть в директорию Мои документы, иначе программа тихо упадет.
Прикрепленные файлы
|
|
|
|
|
ArhiZhek |
14.11.2011, 20:20
Сообщение
#6
|
|
Студент ![]() Группа: Участник Сообщений: 46 Регистрация: 9.10.2011 Пользователь №: 2932 Спасибо сказали: 0 раз(а) Репутация: 0
|
Цитата(silver47 @ 14.11.2011, 6:57) Link Самый простой пример в приложении. Не слежу за возвращаемыми значениями, но слежу за памятью. Возможны ошибки с просонья. Очень давно ничего в эксель не выводил. Файл out.xls лучше сразу кинуть в директорию Мои документы, иначе программа тихо упадет. благодарю за подмогу))) |
|
|
|
![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 28.12.2025, 2:46 |