![]() |
|
Модераторы: MetalFan |
![]()
|
|
| Albinos_x |
|
||||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 15 Всего: 108 |
а вообще селесообразней сделать через:
т.к. в момент работы программы может быть открыто несколько книг... тогда сохранится не та, которую мы хотим... а ещё целесообразней сделать так:
тогда различных непонятных косяков не будет... Это сообщение отредактировал(а) Albinos_x - 24.5.2006, 20:22 -------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
||||
|
|||||
| Litta |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 14.3.2006 Репутация: 1 Всего: 1 |
Блин а в ХР так не катит, грит не хватает параметров !!!
|
|||
|
||||
| Albinos_x |
|
|||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 15 Всего: 108 |
да точно мой косяк... обсчитался... прошу прощение за введение в заблуждение...
Добавлено @ 20:49 случайно параметр пропустил: procedure SaveAs( FileName:OleVariant ; FileFormat:OleVariant ; Password:OleVariant ; WriteResPassword:OleVariant ; ReadOnlyRecomended:OleVariant ; CreateBackUp:OleVariant ; AccesMode:XLSaveAsAccessMode ; ConflictResolution:OleVariant ; AddtoMru:OleVariant ; TextCodePage:OleVariant ; TextVisualLayout:OleVariant ; Local:OleVariant; lcid:Integer) -------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
|||
|
||||
| Albinos_x |
|
||||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 15 Всего: 108 |
сделай так:
это первое различие, которое я нашёл между 2000 и 2002... пасиб... надо в свою статью внести изменения... Добавлено @ 21:16 т.е. для твоего кода:
соответственно, если нужно, можно заменить ExcelWorkbook на ExcelApp.ActiveWorkbook или ExcelApp.Workbooks[1]... Это сообщение отредактировал(а) Albinos_x - 24.5.2006, 21:10 -------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
||||
|
|||||
| Litta |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 14.3.2006 Репутация: 1 Всего: 1 |
У меня на вот это ругается:
EWs.ConnectTo(ExcelApp.Workbooks.Add(EmptyParam,icid)); Говорит Incompatible types '_Workbook' and '_WorkSheet' Добавлено @ 21:32 А можно про эту строчку поподробнее if (StrToInt(Copy(ExcelApp.Version[icid],1,pos('.',ExcelApp.Version[icid])-1)))=9 then Что здесь что значит ??? а то вполне возможно придётся переделывать под office2003 |
|||
|
||||
| Albinos_x |
|
|||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 15 Всего: 108 |
понятное дело... поэтому я и написал переменную
ExcelWorkbook т.к. это книга, а у тебя EWs, как понял является листом книги... если я правильно понял, то ты делаешь через стандартные компоненты... там на закладке Servers есть компоненты: ExcelApplication1 ExcelWorkbook1 ExcelWorkSheet1 Добавлено @ 21:39 эту статью читал? ExcelApp.Version[icid] вернёт строку: Excel97 = "8.0" Excel2000 = "9.0" Excel2002 (XP) = "10.0" Excel2003 = "11.0" -------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
|||
|
||||
| Litta |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 14.3.2006 Репутация: 1 Всего: 1 |
Статью читал, правда давненько, уже подзабыл
ИСпользую стандартные компоненты с Servers, правда ExcelWorkbook1 на форму не кидаю, так обхожусь... Теперь такая штуковина: Если написать так (EWs as ExcelXP.ExcelWorkbook).SaveAs(FileName, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam,EmptyParam, EmptyParam,0); ТО выскакивает ... Could not convert variant of type (Error) into type (Boolean) Если же написать так: (EWs as ExcelXP.ExcelWorkbook).SaveAs(FileName, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, xlNoChange, EmptyParam, EmptyParam, EmptyParam,EmptyParam, EmptyParam,0); ТО получаем Interface not supported Вот же блин Это сообщение отредактировал(а) Litta - 24.5.2006, 22:12 |
|||
|
||||
| Albinos_x |
|
|||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 15 Всего: 108 |
у тебя какая версия делфи?
У меня всё нормально работает... -------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
|||
|
||||
| Litta |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 14.3.2006 Репутация: 1 Всего: 1 |
Delphi 7
Может uses какой-нить надо подключить ? (Excel2000 я подключил, так не работало бы А то иногда так бывает, когда пишешь с начала, то всё ок, а когда во что-то внедряешь - приходится самому добавлять всякие uses-ы |
|||
|
||||
| Albinos_x |
|
|||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 15 Всего: 108 |
для страницы метод сохранения другой... там нет параметров: AccesMode:XLSaveAsAccessMode ; ConflictResolution:OleVariant ; Local:OleVariant там вообще достаточно одного параметра FileName.... и не нужно далать разделение между версиями... -------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
|||
|
||||
| Albinos_x |
|
||||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 15 Всего: 108 |
и делать тогда лучше так:
а проще вообще:
-------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
||||
|
|||||
| Litta |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 14.3.2006 Репутация: 1 Всего: 1 |
Ура, я разобрался !!! Всё гениальное просто
FileName - имя файла - сделал WideString и всё заработало !!! И на 2000-м и на ХР !!! (надеюсь на 2003-й это тоже распространится Большое спасибо за помощь !!!!!!! PS: Если написать EWs.SaveAs(FileName) - то вылетает ошибка опять кажется аксесс виолэйшн ин 00000000 ... |
|||
|
||||
![]()
|
| Правила форума "Delphi: ActiveX/СОМ/CORBA" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Rrader, Girder. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: ActiveX/СОМ/CORBA | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |