Добрый день!
Можно ли как-то программно определить, какая версия у excel, стоящего на компе.
У разных пользователей стоят разные версии, соответственно, расширение у файла-отчета должно быть разное.
Я знаю, что если расширение не указывать в имени файла, то оно сформируется автоматически, но мне нужно не просто сделать отчет, но и автоматически сразу отправить его по эл.почте.
Вот здесь и происходит затык. Без расширения файл к письму не прикрепляется.
Как определить версию excel
Модераторы: m0p3e, edward_K, Модераторы
Как определить версию excel
Кто сказал, что бесполезно биться головой об стену?!
Re: Как определить версию excel
Макрос в помощь: Application.Version
-
- Местный житель
- Сообщения: 554
- Зарегистрирован: 17 июл 2012, 11:56
- Откуда: Республика Беларусь, г.Могилев
Re: Как определить версию excel
Здравствуйте. См. обсуждение по теме
http://tyumbit.ru/gal_forum/viewtopic.p ... 1%8F+Excel
Там есть и по поводу версии Excel. Сама на прошлой неделе воспользовалась (для нахождения ограничения строк и для формирования расширения файла). Спасибо edward_K.
http://tyumbit.ru/gal_forum/viewtopic.p ... 1%8F+Excel
Там есть и по поводу версии Excel. Сама на прошлой неделе воспользовалась (для нахождения ограничения строк и для формирования расширения файла). Спасибо edward_K.
Re: Как определить версию excel
Спасибо, Ирина!
Работает)))
Работает)))
Кто сказал, что бесполезно биться головой об стену?!
-
- Местный житель
- Сообщения: 1089
- Зарегистрирован: 04 сен 2008, 11:27
- Откуда: Москва
- Контактная информация:
Re: Как определить версию excel
принято рабочие версии найденных решений выкладывать в тему .. чтоб потом друг-друга ссылками не кормить ..s2176 писал(а):Спасибо, Ирина!
Работает)))
Время ведет!
Re: Как определить версию excel
Простите, я не была в курсе принятых решений
var VersionExcel: string;
...
xlOpenNewExcel(false) //чтобы определить версию, нужно обязательно сначала запустить excel
xlGetVersionExcelInstall(VersionExcel);
xlKillExcel;
if double(VersionExcel)>11 ... //версия больше 2003, вроде так , у меня на машине 2010 офис, возвращает версию под номером 14.
var VersionExcel: string;
...
xlOpenNewExcel(false) //чтобы определить версию, нужно обязательно сначала запустить excel
xlGetVersionExcelInstall(VersionExcel);
xlKillExcel;
if double(VersionExcel)>11 ... //версия больше 2003, вроде так , у меня на машине 2010 офис, возвращает версию под номером 14.
Кто сказал, что бесполезно биться головой об стену?!
-
- Местный житель
- Сообщения: 554
- Зарегистрирован: 17 июл 2012, 11:56
- Откуда: Республика Беларусь, г.Могилев
Re: Как определить версию excel
Здравствуйте. Указала ссылку потому, что посчитала, что лучше не дублировать то, что советовал кто-то ранее. Если кому-то удобнее другое, то:
var VersionExcel : String;
pos1 : Byte;
…
xlOpenNewExcel( False );
xlGetVersionExcelInstall( VersionExcel );// версия Excel
xlKillExcel;
pos1:= Pos( '.', PathToFile);
if Double( VersionExcel ) > 11
{
PathToFile:= Substr( PathToFile, 1, pos1) + 'xlsx'
}
else
{
PathToFile:= Substr( PathToFile, 1, pos1) + 'xls'
}
Еще раз спасибо edward_K. Приведенной им ф-ции xlGetVersionExcelInstall не было в Excel_Lib.pdf.
var VersionExcel : String;
pos1 : Byte;
…
xlOpenNewExcel( False );
xlGetVersionExcelInstall( VersionExcel );// версия Excel
xlKillExcel;
pos1:= Pos( '.', PathToFile);
if Double( VersionExcel ) > 11
{
PathToFile:= Substr( PathToFile, 1, pos1) + 'xlsx'
}
else
{
PathToFile:= Substr( PathToFile, 1, pos1) + 'xls'
}
Еще раз спасибо edward_K. Приведенной им ф-ции xlGetVersionExcelInstall не было в Excel_Lib.pdf.