Private Sub UserForm_Initialize()
TextBox1 = Range("A1")
If IsNumeric(TextBox1) Then
Label1 = "Числовой"
Else
Label1 = "Нечисловой"
End If
End Sub
Вот как выглядит результат в Windows 7 (в региональных стандартах установлена запятая в качестве разделителя дробной части): Если не видно, то поясню: в ячейке А1- число 313,5; в TextBox подтянулось тоже 313,5; то есть в обоих случаях имеется ЗАПЯТАЯ; соответственно формат определен как числовой. А от как выглядит результат в Windows 10 (в региональных стандартах также установлена запятая в качестве разделителя дробной части):
Поясню, поскольку плохо видно: в ячейке А1- 313,5 в TextBox- 313.5 То есть в TextBox значение подтянулось с ТОЧКОЙ! Соответственно формат определен как нечисловой В результате перехода на Windows 10 у нас полетели все экселевские макросы!
Кто-то может подсказать, что с этим делать (чтобы не переписывать программы и не менять в региональных стандартах запятую на точку)?
tim8579 написал: Кто-то может подсказать, что с этим делать (чтобы не переписывать программы и не менять в региональных стандартах запятую на точку)?
Есть такая проблема, она связана не с версией Office, и не с его битностью 32/64, а именно с версией операционной системы, точнее с библиотекой FM20.DLL Возможно, проблему совместимости когда-нибудь устранят. А пока советую вместо TextBox1 = Range("A1").Value использовать TextBox1.Text = Range("A1").Value
ZVI написал: Есть такая проблема, она связана не с версией Office, и не с его битностью 32/64, а именно с версией операционной системы, точнее с библиотекой FM20.DLL
If the files are truly missing they can be copied from the Windows 7 environment to the Windows 10 environment. C:\Windows\SysWow64\COMCT2.OCX (the active X controls) C:\Windows\SysWow64\FM20.dll
Я наталкнулся "на стену недопонимания" подключив надстройку в Win10+office2007. Показав собщение об отсутствии библиотеки, в коде подсвечивается функция ChrW(257)...
Эта часть была не очень важна и я эти строки с ChrW функцией закоментировал. Это заполнение было -> ComboBox5.AddItem "Pied" & ChrW(257) & "v" & ChrW(257) & "jums"
После этого выдало ту же ошибку, но уже ругнулось на другую часть кода без ChrW. Даже не запомнил на какую, поняв, что проблема не в коде.