Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Как проверить какой версией Excel открывается файл? - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Как проверить какой версией Excel открывается файл? (Если пользователь открывает файл версией более ранней чем...)
Как проверить какой версией Excel открывается файл?
lopuxi Дата: Четверг, 28.04.2016, 17:46 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 108
Репутация: 0 ±
Замечаний: 20% ±

Excel 2007, 2013
Установить проверку. "Если пользователь открывает файл версией более ранней чем 2010?"

Коротко об случившемся.
Я сегодня, такой веселый и крутой, добавил в существующий в офисе макрос обновления. Теперь когда макрос создает таблицу с данными он делает из нее "умную таблицу" и вставляет срезы (фильтры).

А теперь я задумался, не у всех есть Excel 2010, "срезы" в более ранних версиях отсутствую. Могу ли я определить версию Excel?
и в коде VBA создать условие что если версия более ранняя чем 2010, то блок кода создания умной таблицы со срезами попросту не выполнять?

Прикрепляю файл - пример.
К сообщению приложен файл: ___VBA.xlsm(39Kb)


О_о ...и так можно было?
 
Ответить
СообщениеУстановить проверку. "Если пользователь открывает файл версией более ранней чем 2010?"

Коротко об случившемся.
Я сегодня, такой веселый и крутой, добавил в существующий в офисе макрос обновления. Теперь когда макрос создает таблицу с данными он делает из нее "умную таблицу" и вставляет срезы (фильтры).

А теперь я задумался, не у всех есть Excel 2010, "срезы" в более ранних версиях отсутствую. Могу ли я определить версию Excel?
и в коде VBA создать условие что если версия более ранняя чем 2010, то блок кода создания умной таблицы со срезами попросту не выполнять?

Прикрепляю файл - пример.

Автор - lopuxi
Дата добавления - 28.04.2016 в 17:46
Pelena Дата: Четверг, 28.04.2016, 17:56 | Сообщение № 2
Группа: Модераторы
Ранг: Экселист
Сообщений: 9851
Репутация: 2254 ±
Замечаний: 0% ±

Excel 2010 & Mac Excel 2011


"Черт возьми, Холмс! Но как??!!"
ЯД 41001765434816
 
Ответить
СообщениеОпределение используемой версии Excel

Автор - Pelena
Дата добавления - 28.04.2016 в 17:56
lopuxi Дата: Четверг, 28.04.2016, 18:03 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 108
Репутация: 0 ±
Замечаний: 20% ±

Excel 2007, 2013
Определение используемой версии Excel


Спасибо ) то что надо


О_о ...и так можно было?
 
Ответить
Сообщение
Определение используемой версии Excel


Спасибо ) то что надо

Автор - lopuxi
Дата добавления - 28.04.2016 в 18:03
Alex_ST Дата: Воскресенье, 01.05.2016, 22:24 | Сообщение № 4
Группа: Друзья
Ранг: Старожил
Сообщений: 2883
Репутация: 504 ±
Замечаний: 0% ±

2003
Точно то же самое, но немного покороче:[vba]
Код
Function ExcelVersion()
   ExcelVersion = Choose(Val(Application.Version) - 8, 2000, 2002, 2003, 2007, False, 2010, 2015, 2016, False)
End Function
[/vba]



С уважением,
Алексей
MS Excel 2003 - the best!!!
 
Ответить
СообщениеТочно то же самое, но немного покороче:[vba]
Код
Function ExcelVersion()
   ExcelVersion = Choose(Val(Application.Version) - 8, 2000, 2002, 2003, 2007, False, 2010, 2015, 2016, False)
End Function
[/vba]

Автор - Alex_ST
Дата добавления - 01.05.2016 в 22:24
StoTisteg Дата: Понедельник, 02.05.2016, 01:27 | Сообщение № 5
Группа: Авторы
Ранг: Ветеран
Сообщений: 541
Репутация: 45 ±
Замечаний: 0% ±

Excel 2010
Куда уж короче, чем
[vba]
Код
Application.Version
[/vba]


Проверь всё. ThisWorkbook.Save. On Error Resume Next.

Сообщение отредактировал StoTisteg - Понедельник, 02.05.2016, 01:28
 
Ответить
СообщениеКуда уж короче, чем
[vba]
Код
Application.Version
[/vba]

Автор - StoTisteg
Дата добавления - 02.05.2016 в 01:27
Alex_ST Дата: Понедельник, 02.05.2016, 09:21 | Сообщение № 6
Группа: Друзья
Ранг: Старожил
Сообщений: 2883
Репутация: 504 ±
Замечаний: 0% ±

2003
Ну, естественно, если Вы никуда не выводите сообщение с номером версии, а просто используете его в программе и поэтому Вас устраивает набор чисел от 10 до 16, то Application.Version короче.



С уважением,
Алексей
MS Excel 2003 - the best!!!
 
Ответить
СообщениеНу, естественно, если Вы никуда не выводите сообщение с номером версии, а просто используете его в программе и поэтому Вас устраивает набор чисел от 10 до 16, то Application.Version короче.

Автор - Alex_ST
Дата добавления - 02.05.2016 в 09:21
StoTisteg Дата: Понедельник, 02.05.2016, 17:16 | Сообщение № 7
Группа: Авторы
Ранг: Ветеран
Сообщений: 541
Репутация: 45 ±
Замечаний: 0% ±

Excel 2010
Так задача стоит так:
А теперь я задумался, не у всех есть Excel 2010, "срезы" в более ранних версиях отсутствую. Могу ли я определить версию Excel?

То есть понятно, что ТС надо её анализировать, а не на печать выводить :)


Проверь всё. ThisWorkbook.Save. On Error Resume Next.
 
Ответить
СообщениеТак задача стоит так:
А теперь я задумался, не у всех есть Excel 2010, "срезы" в более ранних версиях отсутствую. Могу ли я определить версию Excel?

То есть понятно, что ТС надо её анализировать, а не на печать выводить :)

Автор - StoTisteg
Дата добавления - 02.05.2016 в 17:16
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Как проверить какой версией Excel открывается файл? (Если пользователь открывает файл версией более ранней чем...)
Страница 1 из 11
Поиск:

Яндекс цитирования
© 2010-2016 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!