Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.08.2015, 23:55   #1
Юра154
Пользователь
 
Аватар для Юра154
 
Регистрация: 28.08.2015
Сообщений: 27
По умолчанию Где ошибка?

Не переключает раскладку на украинскую (с росс все норм, а вот на укр не меняет, где может быть ошибка)?

Код:
Private Declare Function ActivateKeyboardLayout _
Lib "user32" (ByVal HKL As Long, ByVal flags As Long) As Long
Const kb_lay_ru As Long = 68748313, kb_lay_en As Long = 67699721,
kb_lay_ua As Long = 69338146
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Select Case Target.Column    ' comments
        Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Select Case Target.Column    ' comments
        
        Case 6:    ' comments
            ВключитьАнглийскуюРаскладку
        Case 7:    ' comments
            ВключитьУкраинскуюРаскладку
        Case Else: ' else
    
    End Select
End Sub
 
Sub ВключитьРусскуюРаскладку()
    ' Переключить на русский язык
    x = ActivateKeyboardLayout&(kb_lay_ru, 0)
End Sub
 
Sub ВключитьАнглийскуюРаскладку()
    ' Переключить на английский язык
    x = ActivateKeyboardLayout&(kb_lay_en, 0)
End Sub 
Sub ВключитьУкраинскуюРаскладку()
    ' Переключить на украинский язык
    x = ActivateKeyboardLayout&(kb_lay_ua, 0)
End Sub

Последний раз редактировалось Stilet; 30.08.2015 в 08:02.
Юра154 вне форума Ответить с цитированием
Старый 30.08.2015, 00:34   #2
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

вместо этого:
Код:
Const kb_lay_ru As Long = 68748313, kb_lay_en As Long = 67699721,
kb_lay_ua As Long = 69338146
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Select Case Target.Column ' comments
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Select Case Target.Column ' comments
напишите так:
Код:
Const kb_lay_ru As Long = 68748313, kb_lay_en As Long = 67699721, kb_lay_ua As Long = 69338146
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Select Case Target.Column ' comments
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 30.08.2015, 00:38   #3
gling
Форумчанин
 
Регистрация: 23.01.2010
Сообщений: 261
По умолчанию

Оказывается все не просто, по этому удалил запись.
gling вне форума Ответить с цитированием
Старый 30.08.2015, 01:35   #4
Юра154
Пользователь
 
Аватар для Юра154
 
Регистрация: 28.08.2015
Сообщений: 27
По умолчанию

Sub ВключитьАнглийскуюРаскладку() - - - - - данная строка выделена желтым и ругается о ошибке
' Переключить на английский язык
x = ActivateKeyboardLayout&(kb_lay_en, 0)
End Sub
Compile error: Sub or function not defined

Последний раз редактировалось Юра154; 30.08.2015 в 01:45.
Юра154 вне форума Ответить с цитированием
Старый 30.08.2015, 02:06   #5
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Юра,
приведенные строки вполне корректны, но что написано над ними...
ни кто, кроме Вас не знает
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 30.08.2015, 02:18   #6
Юра154
Пользователь
 
Аватар для Юра154
 
Регистрация: 28.08.2015
Сообщений: 27
По умолчанию

Код:
Private Declare Function ActivateKeyboardLayout _
Lib "user32" (ByVal HKL As Long, ByVal flags As Long) As Long
Const kb_lay_ru As Long = 68748313, kb_lay_en As Long = 67699721, kb_lay_ua As Long = 69338146
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Select Case Target.Column ' comments
        Case 6:    ' @mail
            ВключитьАнглийскуюРаскладку
        Case 7:    ' смена клавиатуры на укр
            ВключитьУкраинскуюРаскладку
        Case Else: ' ничего не делаем (оставляем текущую раскладку)
    End Select
End Sub
 
Sub ВключитьРусскуюРаскладку()
    ' Переключить на русский язык
    x = ActivateKeyboardLayout&(kb_lay_ru, 0)
End Sub
 
Sub ВключитьАнглийскуюРаскладку()
    ' Переключить на английский язык
    x = ActivateKeyboardLayout&(kb_lay_en, 0)
End Sub
Sub ВключитьУкраинскуюРаскладку()
    ' Переключить на укр язык
    x = ActivateKeyboardLayout&(kb_lay_ua, 0)
End Sub

Последний раз редактировалось Stilet; 30.08.2015 в 08:02.
Юра154 вне форума Ответить с цитированием
Старый 30.08.2015, 02:33   #7
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

на вид все нормально.

теперь файл, где это не работает!
и описание, в какой ситуации что не сработало
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 30.08.2015, 11:32   #8
Юра154
Пользователь
 
Аватар для Юра154
 
Регистрация: 28.08.2015
Сообщений: 27
Радость Все получилось, благодарю!

Всем спасибо, проблема решилась сменой клавиатуры украинской расширенной, на украинскую, видимо там другой код клавиатуры, которого я не не нашел в интернете.

Последний раз редактировалось Юра154; 30.08.2015 в 11:55.
Юра154 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
спасите, добрые люди, пожаааааалуйста:3 где-то в коде закралась ошибка, потому что выводит левые числа, а где, понятия не имею:с typayababa Помощь студентам 9 19.11.2017 11:48
Где ошибка? При билдинге ошибок 0, но при запуске вылетает ошибка. Visual C nikitabool Помощь студентам 0 08.01.2014 17:19
Где ошибка???Турбо Паскаль Ошибка 57 PASKAL12 Помощь студентам 6 14.10.2013 22:31
Где ошибка в этом исходном коде на языке Си? Или ошибка в Excel? ArchiCurtis Помощь студентам 2 07.04.2012 14:16
написал программу, где то ошибка, не пойму где... Kelevra91 Общие вопросы C/C++ 5 17.01.2011 16:38