![]() |
|
Модераторы: Akina |
![]()
|
|
| JUmPER |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 22.8.2006 Репутация: 1 Всего: 3 |
при использовании OLE с диаграммой excel сохранение не работает корректно
в результате получается файл, который excel не может открыть (ничего не говорит, просто открывается пустой воркспейс -- т.е. без документа)
--------------------
Существует 10 типов людей: те, которые понимают двоичную систему, и те, которые ее не понимаютСуществует 10 типов людей: те, кто понимают троичную систему, те, кто ее не понимают и те, кто путает ее с двоичной |
|||
|
||||
| mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 11 Всего: 109 |
Вот смотри...
У меня есть на форме OLE-объект с именем OLE1 НЕ ВАЖНО КАКОЙ!!! Я его буду сейчас сохранять...
Вопросы ещё есть? Это сообщение отредактировал(а) mihanik - 3.10.2006, 13:06 |
|||
|
||||
| JUmPER |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 22.8.2006 Репутация: 1 Всего: 3 |
сохранять-то сохраняет (файл появляется), да вот самим экселем его не открыть -- ругается.
--------------------
Существует 10 типов людей: те, которые понимают двоичную систему, и те, которые ее не понимаютСуществует 10 типов людей: те, кто понимают троичную систему, те, кто ее не понимают и те, кто путает ее с двоичной |
|||
|
||||
| mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 11 Всего: 109 |
Угу...
Понятно. Это он просто в своём внутреннем формате сохраняет. А чтобы ехелем открыть надо что-то типа такого..
Проверил. У меня работает. В референсах только ехель подключить надо... Добавлено @ 15:18 Блин... Извини! Что-то у меня подглючивает... Буду думать... |
|||
|
||||
| JUmPER |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 22.8.2006 Репутация: 1 Всего: 3 |
у меня то же, что и было вначале (excel не ругается, но файл не открывает)
--------------------
Существует 10 типов людей: те, которые понимают двоичную систему, и те, которые ее не понимаютСуществует 10 типов людей: те, кто понимают троичную систему, те, кто ее не понимают и те, кто путает ее с двоичной |
|||
|
||||
| mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 11 Всего: 109 |
Вот так работает!!!!!
FileFormat:=35 - это формат книги ехеля... У меня работает. Лист правда был без диаграммы... ПРОВЕРЬ И ОТПИШИСЬ О РЕЗУЛЬТАТАХ!!! |
|||
|
||||
| JUmPER |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 22.8.2006 Репутация: 1 Всего: 3 |
"Microsoft Excel for windows - обнаружена ошибка...Отправить отчёт..." при попытке его открыть excel'ем
--------------------
Существует 10 типов людей: те, которые понимают двоичную систему, и те, которые ее не понимаютСуществует 10 типов людей: те, кто понимают троичную систему, те, кто ее не понимают и те, кто путает ее с двоичной |
|||
|
||||
| mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 11 Всего: 109 |
Хм...
Если не сложно вышли мне "работающий" кусок товего кода. Лучше в виде проекта VB. Поближе посмотреть хочу... И |
|||
|
||||
| JUmPER |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 22.8.2006 Репутация: 1 Всего: 3 |
я специально создал новый прект и вставил в него твой код
поменял только имя файла --------------------
Существует 10 типов людей: те, которые понимают двоичную систему, и те, которые ее не понимаютСуществует 10 типов людей: те, кто понимают троичную систему, те, кто ее не понимают и те, кто путает ее с двоичной |
|||
|
||||
| mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 11 Всего: 109 |
Странно...
Когда я создаю лист ехеля и сохраняю его, но при этом на листе нет диаграмм, то лист потом нормально открывается. Если же я вставляю диаграмму, то действительно ехель обрушивается... Может диаграмму ехеля стоит внедрять как отдельный ОЛЕ-объект? Будем думать... Офис у тебя какой? У меня 2003... |
|||
|
||||
| mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 11 Всего: 109 |
Смотри!!!
У меня работает даже с диаграммой !!!
Добавлено @ 11:01 Т.е. играем с форматом файла... |
|||
|
||||
| JUmPER |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 22.8.2006 Репутация: 1 Всего: 3 |
то же самое
видимо, мой офис не работает как надо (у меня 2000ый) --------------------
Существует 10 типов людей: те, которые понимают двоичную систему, и те, которые ее не понимаютСуществует 10 типов людей: те, кто понимают троичную систему, те, кто ее не понимают и те, кто путает ее с двоичной |
|||
|
||||
| mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 11 Всего: 109 |
Знаешь, что!!!
Запусти ехель. нажми <Alt><F11>. Зайдёшь во втроенный в ехель VB. Выбери View / Object Browser/ При помощи поиска найди описание xlNormal. Он нам напрямую не нужен. Нам нужен класс XLFileFormat. Далее посмотри на то, какие форматы файлов поддерживает твой ехель. У меня получилось около 40-50 форматов. В своей программе после FileFormat:= попробуй использовать различные значения. ЗАМЕЧАНИЕ!!! В программе используй не имена констант, а их числовые значения (видны внизу при выделении конкретной константы.) Для 2003 офиса у меня получилась константа с именем xlWorkbookNormal. Const xlWorkbookNormal = -4143 (&HFFFFEFD1) Поэксперементируй. Команду Call OleWorkBook.Close НЕ ИСПОЛЬЗУЙ!!! И ещё!!! В референсах не забывай подключать ехель. У меня это Microsoft Excel 11.0 Прицепил свой проект. Может поможет... Это сообщение отредактировал(а) mihanik - 4.10.2006, 11:59 Присоединённый файл ( Кол-во скачиваний: 3 )
ole.rar 3,06 Kb |
|||
|
||||
| JUmPER |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 22.8.2006 Репутация: 1 Всего: 3 |
в списке поддерживаемых есть та же константа с тем же значением,
но результат тот же -- excel открывается с пустым воркспейсом так что скорее всего это баги в самом экселе... PS: в приаттаченом тобой проекте одного из файлов формы не хватает (не текстового -- с этим в порядке) Добавлено @ 12:47 кстати, файл всегда получается одного размера -- 7.680к --------------------
Существует 10 типов людей: те, которые понимают двоичную систему, и те, которые ее не понимаютСуществует 10 типов людей: те, кто понимают троичную систему, те, кто ее не понимают и те, кто путает ее с двоичной |
|||
|
||||
| mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 11 Всего: 109 |
||||
|
||||
| JUmPER |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 22.8.2006 Репутация: 1 Всего: 3 |
то же самое
--------------------
Существует 10 типов людей: те, которые понимают двоичную систему, и те, которые ее не понимаютСуществует 10 типов людей: те, кто понимают троичную систему, те, кто ее не понимают и те, кто путает ее с двоичной |
|||
|
||||
| mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 11 Всего: 109 |
Если у тебя при открытии моего проекта не хватает какого-то файла, то посмотри на его имя и просто вручную его добавь в проект из папки, в которую проект распаковал.
Если же проект загружается и запускается нормально, то ОЧЕНЬ ПОДРОБНО опиши свои действия, которые ты выполняешь при запущенной своей программе. Кроме того. Выложи сюда свой проект. Пусть даже он будет сделан копированием моего кода. Хочу посмотреть всё досканально... Во вложении exe-шник. файл складывает на С с именем 222.xls Это сообщение отредактировал(а) mihanik - 4.10.2006, 14:30 Присоединённый файл ( Кол-во скачиваний: 1 )
Project1.exe 24,00 Kb |
|||
|
||||
| JUmPER |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 22.8.2006 Репутация: 1 Всего: 3 |
1) брал твой проект (в исходниках) -- сохраняет файл стандартного (7.680к) размера, который открывается excel'ем как пустой воркспейс
2) запустил экзешник, нажал на кнопку -- получил окошко, что в бинарнике обнаружена ошибка и с вопросом, нужно ли отправлять отчёт мелкомягким. по ходу 1) это глюки самого excel'я 2) это несовместимость версий класса внутри ole контейнера --------------------
Существует 10 типов людей: те, которые понимают двоичную систему, и те, которые ее не понимаютСуществует 10 типов людей: те, кто понимают троичную систему, те, кто ее не понимают и те, кто путает ее с двоичной |
|||
|
||||
| mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 11 Всего: 109 |
БЛИН!
Загадка природы... Попробуй переустановить офис! |
|||
|
||||
| JUmPER |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 22.8.2006 Репутация: 1 Всего: 3 |
по ходу если приложение должно работать везде, то про ole нужно забыть...
--------------------
Существует 10 типов людей: те, которые понимают двоичную систему, и те, которые ее не понимаютСуществует 10 типов людей: те, кто понимают троичную систему, те, кто ее не понимают и те, кто путает ее с двоичной |
|||
|
||||
| mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 11 Всего: 109 |
Или указывать минимальные требования, при которых будет приложение функционировать.
А может твою задачу можно как-то по-другому сформулировать? Решить другими средствами? |
|||
|
||||
| JUmPER |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 22.8.2006 Репутация: 1 Всего: 3 |
mihanik
как вариант (а я так и сделаю): excel документ будет только в памяти, а не в ole а на форме MSHFlexGrid и MSChart... PS: я хотел всё сделать проще без всяких там конвертеров-деконвертеров, но не выходит --------------------
Существует 10 типов людей: те, которые понимают двоичную систему, и те, которые ее не понимаютСуществует 10 типов людей: те, кто понимают троичную систему, те, кто ее не понимают и те, кто путает ее с двоичной |
|||
|
||||
| mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 11 Всего: 109 |
Удачной тебе охоты, JUmPER!!!
|
|||
|
||||
| JUmPER |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 22.8.2006 Репутация: 1 Всего: 3 |
Пасиб
--------------------
Существует 10 типов людей: те, которые понимают двоичную систему, и те, которые ее не понимаютСуществует 10 типов людей: те, кто понимают троичную систему, те, кто ее не понимают и те, кто путает ее с двоичной |
|||
|
||||
| mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 11 Всего: 109 |
СЛУШАЙ!
Сейчас глупая идея пришла!!! Используй OLE! Только по-хитрому!!! Всё это дело в ОЛЕ создаёшь, а потом перед сохранением создаёшь в памяти объект "книга ехель". Копируешь из ОЛЕ всё в эту книгу. Сохраняешь книгу на диск. Идея ясна? Практическое воплощение пока не продумывал, но предполагаю, что оно возможно... |
|||
|
||||
| alexshm |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 5.10.2006 Репутация: нет Всего: нет |
У меня была аналогичная ситуация - чтобы файл созданный по OLE отображался, нужно пред сохранением явно сделать его видимым. Только не помню - Window.Visible или Workbook.Visible. Если не получится - пишите, я вечером дома посмотрю.
У Excel есть еще такой глюк - после обращения по OLE он не убивает процесс приложения - то есть на экране ничего нет, а в памяти несколько экземпляров болтается. И Ваша книга создается в невидимом экземпляре. Может в этом проблема? |
|||
|
||||
| JUmPER |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 22.8.2006 Репутация: 1 Всего: 3 |
mihanik
тут проблема в том, что копируется только ссылка на объект а метода clone у воркбука нет alexshm у воркбука такого метода нет (видимо имеется в виду Excel.Application) напиши поподробнее --------------------
Существует 10 типов людей: те, которые понимают двоичную систему, и те, которые ее не понимаютСуществует 10 типов людей: те, кто понимают троичную систему, те, кто ее не понимают и те, кто путает ее с двоичной |
|||
|
||||
![]()
|
| Правила форума "VB6" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | VB6 | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |