Добрый день, уважаемые форумчане
столкнулся с проблемой выполнения макроса для смены раскладки клавиатуры, декларация функции WinAPI делалась под 32-битный Офис:
В процесе работы этот же файл нужно использовать на компютерах и 32 и 64 битной разрядностью
Пробовал пойти вот таким путем:
в процесе исполнения 4 строка выделяется красным, а макрос не отрабатывает (в 64 бит Офисе при этом в 32 битном проблем нет) .
Прошу помочь разобраться
столкнулся с проблемой выполнения макроса для смены раскладки клавиатуры, декларация функции WinAPI делалась под 32-битный Офис:
Код |
---|
Private Declare Function ActivateKeyboardLayout Lib "user32" (ByVal HKL As Long, ByVal flags As Long) As Long |
Пробовал пойти вот таким путем:
Код |
---|
#If Win64 Then Private Declare PtrSafe Function ActivateKeyboardLayout Lib "user32" (ByVal HKL As LongLong, ByVal flags As LongLong) As LongLong #Else Private Declare Function ActivateKeyboardLayout Lib "user32" (ByVal HKL As Long, ByVal flags As Long) As Long #End If |
в процесе исполнения 4 строка выделяется красным, а макрос не отрабатывает (в 64 бит Офисе при этом в 32 битном проблем нет) .
Прошу помочь разобраться