Форум программистов, компьютерный форум, киберфорум
Наши страницы
VBA
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
Ципихович Эндрю
1414 / 324 / 28
Регистрация: 10.04.2009
Сообщений: 5,213
1

Как узнать разрядность ОС VBA

15.11.2016, 13:43. Просмотров 2020. Ответов 10
Метки нет (Все метки)

здравствуйте, собственно сабж + узнать название ОС, спасибо
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.11.2016, 13:43
Ответы с готовыми решениями:

Как узнать пароль на VBA?
как узнать пароль пользователя при поиощи VBA

Как узнать размер экрана из VBA?
Наглухо автоматизированная база данных - требуется при запуске определить размер экрана и запустить...

Как в VBA узнать длительность операции в миллисекундах?
Выполняю ряд функций в основной функции, которая в свою очередь выполняется в цикле заголовочной...

Как в VBA узнать когда процесс закончил работу?
Как в VBA узнать когда процесс закончил работу? И существует работа с процессами в VBA

Как средствами VBA узнать IP адрес или имя ПК?
Как средствами VBA узнать IP адрес или имя ПК, запустившего файл проекта и отослать его на другой...

10
farced
21 / 21 / 18
Регистрация: 03.05.2016
Сообщений: 100
15.11.2016, 13:53 2
PureBasic
1
2
3
4
5
 If Environment.Is64BitOperatingSystem = True Then
            MsgBox("x64")
        Else
            MsgBox("x32")
        End If
1
Ципихович Эндрю
1414 / 324 / 28
Регистрация: 10.04.2009
Сообщений: 5,213
15.11.2016, 14:48  [ТС] 3
ругается на Environment
0
SlavaRus
1108 / 218 / 33
Регистрация: 15.03.2010
Сообщений: 664
15.11.2016, 15:37 4
Из хэлпа
PureBasic
1
2
3
MsgBox "Welcome to Microsoft Excel version " & _
    Application.Version & " running on " & _
    Application.OperatingSystem & "!"
0
15.11.2016, 15:37
Ципихович Эндрю
1414 / 324 / 28
Регистрация: 10.04.2009
Сообщений: 5,213
15.11.2016, 16:06  [ТС] 5
не прокатывает в Ворде
Visual Basic
1
 MsgBox Application.OperatingSystem
0
SlavaRus
1108 / 218 / 33
Регистрация: 15.03.2010
Сообщений: 664
15.11.2016, 17:34 6
Тогда по деревенски
PureBasic
1
2
3
4
5
     #If Win64 Then
      MsgBox System.OperatingSystem & " 64"
     #Else
      MsgBox System.OperatingSystem & " 32"
     #End If
0
Ципихович Эндрю
1414 / 324 / 28
Регистрация: 10.04.2009
Сообщений: 5,213
15.11.2016, 18:38  [ТС] 7
и смысл когда заремарчиванно условие?

Добавлено через 50 минут
взлетело:
Visual Basic
1
2
MsgBox$ Split(Environ("processor_identifier"), " ")(0)
Debug.Print Environ("processor_identifier")
в моём случае ответ:
x86 Family 15 Model 2 Stepping 9, GenuineIntel
никто не знает, что это означает?
0
Казанский
14911 / 6312 / 1721
Регистрация: 24.09.2011
Сообщений: 9,977
16.11.2016, 00:39 8
Ципихович Эндрю, как написал SlavaRus, разрядность знает компилятор через свои константы (F1 - Compiler Constants). Название ОС в первом приближении можно получить так
Visual Basic
1
  OSname = CreateObject("wscript.shell").exec("%comspec% /c ver").stdout.readall
0
Ципихович Эндрю
1414 / 324 / 28
Регистрация: 10.04.2009
Сообщений: 5,213
16.11.2016, 06:23  [ТС] 9
спасибо, а без появления консоли это узнать можно?
потом у меня определилось как Microsoft Windows XP [‚ҐабЁп 5.1.2600], при этом абзац имеется в начале и в конце
убрать абзацы и крякозябры можно?

Добавлено через 3 минуты
самостоятельно убрать абзацы не получилось:
Visual Basic
1
2
3
4
OS = CreateObject("wscript.shell").exec("%comspec% /c ver").stdout.readall
    Debug.Print OS
    OS = Replace$(OS, Chr$(13), "")
    Debug.Print OS
0
anton-sf
19 / 19 / 4
Регистрация: 29.03.2015
Сообщений: 111
16.11.2016, 11:55 10
У меня Win 10 x64, код от SlavaRus, который по-деревенски, говорит что у меня Win x32, гм...
Может ли быть так что для Excel 2003 система представляется именно как x32 ?
0
Миниатюры
Как узнать разрядность ОС VBA  
Ципихович Эндрю
1414 / 324 / 28
Регистрация: 10.04.2009
Сообщений: 5,213
16.11.2016, 12:26  [ТС] 11
Цитата Сообщение от SlavaRus Посмотреть сообщение
#If Win64 Then
* * * MsgBox System.OperatingSystem & " 64"
* * *#Else
* * * MsgBox System.OperatingSystem & " 32"
* * *#End If
сначала подумал что решётка как в Перле-коммент, оказывается и с ней работает, зачем она нужна?
ну и возражения anton-sf тоже интересны, что там не так?
0
16.11.2016, 12:26
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.11.2016, 12:26

Excel VBA, как узнать собственное сетевое имя?
При работе с книгой общего доступа необходимо разграничить права. Application.UserName не подходит,...

Как узнать размер проекта VBA в активной книге
Доброе время суток. Подскажите, можно ли каким-то образом с помощью макроса, узнать сколько...

Как программно узнать серийный номер винчестера в VBA?
Подскажите, как программно узнать серийный номер винчестера???


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.