![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
Professor |
![]()
Сообщение
#31
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 16.4.2008 Пользователь №: 151 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Получение количества таблиц(sheet):
Получение количества использованных строк/столбцов:
Причина редактирования: пользуйся форматированием кода (code)
|
|
|
Chesterfilda |
![]()
Сообщение
#32
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 29.10.2009 Пользователь №: 1187 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Доброго время суток!!!Очень полезная тема...
А не подскажете,как вот такой код на VBA:
можно переписать на Qt |
|
|
Professor |
![]()
Сообщение
#33
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 16.4.2008 Пользователь №: 151 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Chesterfilda попробуйте добраться до объекта QueryTable и выполнить generateDocumantation().
Новые находки - доступ к символам внутри ячейки:
|
|
|
Chesterfilda |
![]()
Сообщение
#34
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 29.10.2009 Пользователь №: 1187 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Чуть-чуть разобралась...
Только вот небольшая проблемка... Есть такая функция:
,которая как раз-таки и создает QueryTable... только не получается задать второй параметр этой функции,который указывает ячейку с которой начинается вставка данных. В этом случае должна помочь
Точнее никак не получается написть это на QT
|
|
|
Chesterfilda |
![]()
Сообщение
#35
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 29.10.2009 Пользователь №: 1187 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Нашла где-то на сайте:
Цитата Если методу нужно передать аргумент типа IDispatch * или IUnknown *, то можно сначала инкапсулировать его в объект QAxObject, а затем вызвать метод asVariant(), чтобы преобразовать его в тип QVariant Но это не помогает :-(...Если пишу:
то выдает след ошибку: QAxBase: Error calling IDispatch member Add: Exception thrown by server Как же обратится к этой ячейке?? |
|
|
Professor |
![]()
Сообщение
#36
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 16.4.2008 Пользователь №: 151 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Chesterfilda а может вместо:
QAxObject *range=statSheet->querySubObject("Range(QVariant &)",QVariant(QString("A4"))); попробовать: QAxObject *range=statSheet->querySubObject("Range(QVariant &)",QVariant(QString("A4:C8"))); Я не проверят но может сработает. |
|
|
dim_san |
![]()
Сообщение
#37
|
Новичок Группа: Новичок Сообщений: 6 Регистрация: 13.11.2009 Пользователь №: 1228 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Создаю документ ворда таким образом:
QAxWidget *activeX = new QAxWidget( ); activeX->setControl( "Word.Document" ); ui->verticalLayout->insertWidget(0, activeX ); при этом размещаю его в лайауте. Показывается документ как и надо (встроенный в мой виджет). Можно ли каким-то образом достать вордовский тулбар и разместить его куда надо мне, например на основной тулбар моего приложения? Или придется делать собственный? |
|
|
arial |
![]()
Сообщение
#38
|
![]() Студент ![]() Группа: Участник Сообщений: 39 Регистрация: 27.9.2009 Пользователь №: 1121 Спасибо сказали: 9 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
dim_san |
![]()
Сообщение
#39
|
Новичок Группа: Новичок Сообщений: 6 Регистрация: 13.11.2009 Пользователь №: 1228 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
arial, неа.
Такое впечатление, что он пытается сам появиться, панелька пустая появляется и тут же исчезает. Но теоретически это должно быть можно сделать, т.к. видел работающий пример на mfc вроде... Кстати, меню вордовское формируется прямо в главном qt-шном окне, но оно не действует... |
|
|
Rosster |
![]()
Сообщение
#40
|
Студент ![]() Группа: Участник Сообщений: 33 Регистрация: 23.11.2009 Пользователь №: 1254 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Всем привет. А откуда вы берете все эти команды?
Open(const QString&) Item(const QVariant&) QAxObject *rangep = StatSheet->querySubObject( "Cells(const QVariant&,const QVariant&)",QVariant(3),QVariant(1)); rangec->dynamicCall("Copy()"); и так далее? и еще: получаем указатель на листы: QAxObject *mSheets = workbook->querySubObject( "Sheets" ); а как узнать какие листы вообще в документе есть? Ибо возможности узнать название листа и вписать в прогу нету возможности (много разных документов имеются) Спасибо |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 17.2.2025, 8:02 |