Страницы: 1
RSS
VBA Private Declare Function не опознаеться
 
После переустановки системы  ексель перестал её понимать
офисс тот же 2010, в чем подвох?

Код
Private Declare Function GetComputerName Lib "kernel32" _
    Alias "GetComputerNameA" _
    (ByVal lpBuffer As String, nSize As Long) As Long
не нужно оскорблять.
 
Битность новой системы та-же?
Согласие есть продукт при полном непротивлении сторон
 
Может битность системы/офиса сменилась. При объявлении внешних функций/процедур 32 битные не дружат с 64. Проверить надо и если из-за битности, объявление менять.
Изменено: Udik - 09.03.2016 18:13:18
Арфы - нет, возьмите бубен.
 
да совершенно верно  смена разрядности системы
Решение:
Код
#If Win64 Then
Private Declare PtrSafe Function GetComputerName Lib "kernel32" _
    Alias "GetComputerNameA" _
    (ByVal lpBuffer As String, nSize As Long) As Long
#Else
Private Declare Function GetComputerName Lib "kernel32" _
    Alias "GetComputerNameA" _
    (ByVal lpBuffer As String, nSize As Long) As Long
 
#End If
не нужно оскорблять.
Страницы: 1
Наверх