С Новым годом! Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.64/39: Рейтинг темы: голосов - 39, средняя оценка - 4.64
 Аватар для Серж_87
1303 / 509 / 63
Регистрация: 09.08.2012
Сообщений: 2,056

Узнать версию Excel на ПК

08.02.2014, 21:05. Показов 7395. Ответов 23
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Прошу подсказать, как проверить какая версия excel установлена на компьютер аксессом ? 2003/2007/2010...
Просто использую код, который выполняется только при наличии 2007 экселя, хочу сделать условие на выполняемые действия в зависимости от установленной версии
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
08.02.2014, 21:05
Ответы с готовыми решениями:

Как из VBA узнать версию Exсel у объекта Excel.Application
Здравствуйте. Заполняю создаю и заполняю данными Excel файл из Access с помощью кода: Dim Эксель, Книга, Лист As Object Set Эксель =...

Узнать версию ОС
хотелось бы попробовать пример с оператором исполнения, но прежде чем его использовать(например команда dir), надо узнать версию ОС, на...

Узнать версию
В начале QML же обычно пишется что-то типа import QtQuick 5.7? Так вот как узнать эту самую версию которая у меня стоит? Я вот так сейчас...

23
Эксперт MS Access
26825 / 14505 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
08.02.2014, 21:17
Версия Excel наверное такая же как и Access. В Access можно опросить для 2010:
Visual Basic
1
2
?Version
14.0
Если 2007, то ответ будет 12.0. Для 2003 11.0. Ну и так далее
1
 Аватар для Серж_87
1303 / 509 / 63
Регистрация: 09.08.2012
Сообщений: 2,056
08.02.2014, 21:23  [ТС]
Цитата Сообщение от mobile Посмотреть сообщение
Версия Excel наверное такая же как и Access.
программа будет в mdb формате, у части сотрудников 2003 стоит и аксес и эксель, а у части уже 2007.
Вот поэтому в зависимости от версии будут разные действия (костыли конечно )
Цитата Сообщение от mobile Посмотреть сообщение
?Version
14.0
а как это использовать подскажите? на VBA не похоже
0
Эксперт MS Access
26825 / 14505 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
08.02.2014, 21:32
Лучший ответ Сообщение было отмечено Серж_87 как решение

Решение

Это в ВБА. В области отладки (Immediate) редактора ВБЕ. Знак ? равнозначен Debug.Print для выдачи в Immediate в коде. В функции можно опрашивать так
Visual Basic
1
2
3
4
5
6
7
8
Select Case Version
  Case "14.0" 
  'что-то делаем в случае 2010
  Case "12.0" 
  'что-то делаем в случае 2007
  Case "11.0" 
  'что-то делаем в случае 2003
End Select
2
 Аватар для Серж_87
1303 / 509 / 63
Регистрация: 09.08.2012
Сообщений: 2,056
08.02.2014, 21:45  [ТС]
Ничего не понял из вышесказанного
В отладку вставлял ничего не произошло.
Пожет я не так выразился, мне нужно код в процедуру вставить, как то так
Кликните здесь для просмотра всего текста
Visual Basic
1
2
3
4
5
6
7
8
9
10
Private Sub Кнопка1_Click()
Select Case Version
  Case "14.0"
  msgbox ("2010")
  Case "12.0"
  msgbox ("2007")
  Case "11.0"
  msgbox ("2003")
End Select
End Sub


Добавлено через 2 минуты
Сработало, извиняюсь Спасибо
0
 Аватар для Андрэич
2842 / 774 / 41
Регистрация: 20.05.2012
Сообщений: 2,055
09.02.2014, 01:40
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
Sub Versions()
 
  Dim xls As Object
  Set xls = CreateObject("Excel.Application")
 
  MsgBox Application.Version & _
              vbNewLine & _
         xls.Application.Version
 
  Set xls = Nothing
End Sub
2
 Аватар для Серж_87
1303 / 509 / 63
Регистрация: 09.08.2012
Сообщений: 2,056
09.02.2014, 08:49  [ТС]
Андрэич, спасибо,узнать версию самого экселя это именно и нужно.
Только вопрос возник по вашему коду, результат процедуры это два значения получется. Для чего два и что каждая означает подскажите, пожалуйста?
Visual Basic
1
2
3
Application.Version & _      'Узнаем версию экселя?
vbNewLine & _              'ставим enter
xls.Application.Version   'Здесь еще раз версию или чем отличие от строки выше?
0
 Аватар для Андрэич
2842 / 774 / 41
Регистрация: 20.05.2012
Сообщений: 2,055
09.02.2014, 09:12
emenem97, для наглядности, если установлены разные версии Акса и Экселя (у меня, например, 12 и 14 соответственно)

Добавлено через 2 минуты
То есть, 1-ая строка в сообщений - версия Акса, 2-ая - Экселя
1
 Аватар для Серж_87
1303 / 509 / 63
Регистрация: 09.08.2012
Сообщений: 2,056
09.02.2014, 09:13  [ТС]
Понял теперь, то есть в моем случае убрать первый параметр и оставить второй (только эксель интересует). Спасибо
1
 Аватар для Андрэич
2842 / 774 / 41
Регистрация: 20.05.2012
Сообщений: 2,055
09.02.2014, 09:15
Но вообще, нужно ещё как минимум обрабатывать ошибки, например, делать что-либо, если Эксель не установлен и т.д.
1
 Аватар для Серж_87
1303 / 509 / 63
Регистрация: 09.08.2012
Сообщений: 2,056
09.02.2014, 09:21  [ТС]
Цитата Сообщение от Андрэич Посмотреть сообщение
делать что-либо, если Эксель не установлен и т.д.
Андрэич, случайно не знаете какой вернет результат ваша процедура, если эксель отсутствует на ПК? Проверить не на чем, а сносить эксель не сильно хочется
0
 Аватар для Андрэич
2842 / 774 / 41
Регистрация: 20.05.2012
Сообщений: 2,055
09.02.2014, 09:33
Наберите в Справке редактора кода что-то типа Object reqired. Вроде :-)

Добавлено через 3 минуты
reqUired
(забыл: слово латинское, а там Ку всегда с буквой У )
1
2891 / 1926 / 208
Регистрация: 05.06.2011
Сообщений: 5,636
09.02.2014, 09:34
Цитата Сообщение от emenem97 Посмотреть сообщение
какой вернет результат ваша процедура, если эксель отсутствует на ПК?
В общем-то, вывалится с какой-нить ошибкой, имхо. На строчке с CreateObject.
1
 Аватар для Андрэич
2842 / 774 / 41
Регистрация: 20.05.2012
Сообщений: 2,055
09.02.2014, 09:37
Да, точно: ерунду там какую-нить в скобках надо написать
0
 Аватар для Серж_87
1303 / 509 / 63
Регистрация: 09.08.2012
Сообщений: 2,056
09.02.2014, 09:39  [ТС]
Сейчас на испытательном полигоне (вирт машина) снесу эксель, точную ошибку напишу потом.
Мне просто она нужна чтобы исключение настроить, то есть не примерная а точная ошибка
0
2891 / 1926 / 208
Регистрация: 05.06.2011
Сообщений: 5,636
09.02.2014, 09:44
Цитата Сообщение от mobile Посмотреть сообщение
Версия Excel наверное такая же как и Access
Ну, кстати говоря, держать на компе разные версии Excel и Access, конечно, глупость, но в жизни ещё и не такое случается.

Добавлено через 1 минуту
Цитата Сообщение от emenem97 Посмотреть сообщение
нужна чтобы исключение настроить, то есть не примерная а точная ошибка
А разве для настройки исключений нужна прям точная ошибка? Проверить, если не лень, конечно, стоит.
0
 Аватар для Андрэич
2842 / 774 / 41
Регистрация: 20.05.2012
Сообщений: 2,055
09.02.2014, 09:45
Так попробуйте:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
Sub Versions()
 
  Dim xls As Object
  Set xls = CreateObject("emenem97Excel.Application")
 
  MsgBox Application.Version & _
              vbNewLine & _
         xls.Application.Version
 
  Set xls = Nothing
End Sub
0
 Аватар для Серж_87
1303 / 509 / 63
Регистрация: 09.08.2012
Сообщений: 2,056
09.02.2014, 09:50  [ТС]
Цитата Сообщение от iifat Посмотреть сообщение
Ну, кстати говоря, держать на компе разные версии Excel и Access, конечно, глупость, но в жизни ещё и не такое случается.
У Андрэича именно так - 2010 и 2013 стоит
0
 Аватар для Андрэич
2842 / 774 / 41
Регистрация: 20.05.2012
Сообщений: 2,055
09.02.2014, 09:51
держать на компе
разные версии Excel и Access,
конечно, глупость

Не по теме:

- Если ты такой умный, то почему такой бедный?
- А ты почему богатый, но такой глупый?
(С) Анекдот из жизни
:D

1
 Аватар для Серж_87
1303 / 509 / 63
Регистрация: 09.08.2012
Сообщений: 2,056
09.02.2014, 10:00  [ТС]
Цитата Сообщение от iifat Посмотреть сообщение
Ну, кстати говоря, держать на компе разные версии Excel и Access, конечно, глупость, но в жизни ещё и не такое случается.
а на предприятиях, там каждый компонент по отдельности стоит и ставится. Установили к примеру эксель 2003 в 2005 году сотруднику, потом ему через 3 года понадобился аксес и ставят только аксес 2007 уже. Сносить купленный эксель 2003 и платить еще за 2007 никто не будет

Добавлено через 2 минуты
Цитата Сообщение от iifat Посмотреть сообщение
А разве для настройки исключений нужна прям точная ошибка?
Я вот этим и занимаюсь в этой теме, вначале определю версию экселяи и есть ли он, потом в зависимости от полученного результата будут различные действия
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
09.02.2014, 10:00
Помогаю со студенческими работами здесь

Как узнать версию ОС?
У меня задача стоит, сделать проверку операционки, чтобы задействовать правильный участок скрипта для задания ДНС. Ведь, как известно, в ХР...

Как узнать версию ОС?
Здравствуйте, подскажите, как узнать версию операционной системы, тип и частоту процессора? (включая ОС 7/8)

Узнать версию клиента
Добрый день! Че-то не работает встроенный Лотусовый механизм с написанием версии клиента в адресной книге (вкладка Administration). Кто...

Узнать версию ОС на Perl
Задача ниженаписанного скрипта (дла Apache) состоит в том, чтобы считать версию ОС, обрезать выражение для сравнения с образцами в...

Узнать версию стандарта C++
Если есть компилятор командной строки, то как можно узнать какой стандарт языка он поддерживает?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru