Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.92/13: Рейтинг темы: голосов - 13, средняя оценка - 4.92
20 / 6 / 1
Регистрация: 06.03.2010
Сообщений: 74
1

Определить язык приложения

21.05.2010, 08:41. Показов 2669. Ответов 2
Метки нет (Все метки)

Подскажите, пожалуйста, как определить текущий язык в Экселе.Нужно определять текущий язык ввода до того, как какие либо символы будут введены, т.е. просто алфавит анализировать не вариант
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.05.2010, 08:41
Ответы с готовыми решениями:

Язык по умолчанию приложения?
Подскажите как настроить язык по умолчанию для приложения на русский? Необходимо решить...

Язык для приложения по умолчанию
Мне хотелось бы, чтобы после запуска программы стоял по умолчанию английский язык. Не прибегая к...

Как изменить язык приложения
Допустим у меня есть приложение. как сделать так чтобы по желанию пользователю(и в зависимости от...

Локализация / интернационализация / перевод приложения на другой язык
Помогите разобраться. Хочу сделать динамическое переключение языков. Доку читал, примеры смотрел,...

2
0 / 0 / 0
Регистрация: 28.09.2009
Сообщений: 88
22.05.2010, 02:11 2
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Private Declare Function GetKeyboardLayoutName _
                          Lib "user32" Alias "GetKeyboardLayoutNameA" _
                              (ByVal pwszKLID As String) As Long
 
Private Declare Function ActivateKeyboardLayout _
                          Lib "user32" (ByVal HKL As Long, _
                                        ByVal flags As Long) As Long
 
Sub ChangeKeyboardLayout()
    Dim KeybLayoutName As String, iState As Integer
 
    KeybLayoutName = String(9, 0)
    GetKeyboardLayoutName KeybLayoutName
    '409 - английская,
    '419 - русская
    'получение значения текущей раскладки
    iState = Val(CStr(CLng(Left$(KeybLayoutName, InStr(1, KeybLayoutName, Chr(0)) - 1))))
    Select Case iState
        Case 409
            MsgBox "Текущая раскладка Английская! Сменим на русскую!", 64, ""
        Case 419
            MsgBox "Текущая раскладка Русская! Сменим на английскую!", 64, ""
        Case Else
            MsgBox "Текущая раскладка какая-то другая! Менять не будем", 64, ""
    End Select
    'Переключение раскладки с русскую на английскую
    If iState = 419 Then
        ActivateKeyboardLayout 0, 0
    End If
    'Переключение раскладки с английской на русскую
    If iState = 409 Then
        ActivateKeyboardLayout 0, 0
    End If
End Sub
А вот пример в виде файла: http://excelvba.ru/XL_Files/Sa... -11-38.zip
0
20 / 6 / 1
Регистрация: 06.03.2010
Сообщений: 74
22.05.2010, 09:55  [ТС] 3
Спасибо!Честно говоря, со всякими API и подобным с вызовом из библиотек не работал никогда.Круто!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.05.2010, 09:55

Язык программирования для приложения, анализирующего уведомления
Всем добрый день. Возникли вопросы насчет программирования мобильных приложений. Была поставлена...

Выбрать язык интерфейса при первом запуске приложения
Доброго времени суток всем! Нужно выбрать язык интерфейса (английский или русский) при первом...

Какую среду и язык лучше использовать для создания Windows-приложения
Добрый день! Подскажите, какую среду и язык лучше использовать для создания Windows-приложения? Его...

Определить язык
Всем привет , ребят есть код . SUB Create() With rsMain .Edit ...


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

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

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