Страницы: 1
RSS
Макрос переход с русского на английский
 
Помогите !!!  
Нужен Макрос при переходе в ComboBox с русского на английский?
 
Вводимый текст в ComBox печатался на английском.  
Есть ComBox 5 штук везде печатается на русском, а при вводе в 6 чтобы на английском.(чтобы не задействовать клавиатуры)
 
Попробуйте что-то вроде этого:  
 
 
Как программно переключить раскладку клавиатуры    
 
1)Добавить в модуль :  
 
' Декларация функций и констант АПИ    
Declare Function ActivateKeyboardLayout Lib "user32" _    
(ByVal HKL As Long, ByVal flags As Long) As Long    
Public Const kb_lay_ru As Long = 68748313    
Public Const kb_lay_en As Long = 67699721    
 
 
2)Создать кнопку "Русский" и написать в коде :  
 
' Переключить на русский язык    
x = ActivateKeyboardLayout&(kb_lay_ru, 0)    
 
 
3)Создать кнопку "Английский" и написать в коде :  
 
' Переключить на английский язык    
x = ActivateKeyboardLayout&(kb_lay_en, 0)
 
А вот и пример в виде файла:  
 
http://excelvba.ru/XL_Files/Sample__12-08-2009__19-10-19.zip  
 
 
Вот весь код формы:  
 
Private Sub ComboBox1_Enter()  
   ActivateKeyboardLayout kb_lay_ru, 0  
End Sub  
Private Sub ComboBox2_Enter()  
   ActivateKeyboardLayout kb_lay_ru, 0  
End Sub  
Private Sub ComboBox3_Enter()  
   ActivateKeyboardLayout kb_lay_ru, 0  
End Sub  
Private Sub ComboBox4_Enter()  
   ActivateKeyboardLayout kb_lay_ru, 0  
End Sub  
Private Sub ComboBox5_Enter()  
   ActivateKeyboardLayout kb_lay_ru, 0  
End Sub  
 
Private Sub ComboBox6_Enter()  
   ActivateKeyboardLayout kb_lay_en, 0  
End Sub  
 
 
 
А это - код модуля:  
 
Declare Function ActivateKeyboardLayout Lib "user32" (ByVal HKL As Long, ByVal flags As Long) As Long  
Public Const kb_lay_ru As Long = 68748313, kb_lay_en As Long = 67699721
 
EducatedFool СПАСИБО !!!
 
Ещё возник вопрос.  
Макрос прописные и строчные буквы.
 
{quote}{login=АБВ}{date=12.08.2009 08:43}{thema=Макрос прописные и строчные}{post}Ещё возник вопрос.  
Макрос прописные и строчные буквы.{/post}{/quote}  
Где вопрос? Или хотя бы где глагол?  
UCase(), LCase()
 
Вопрос такой же как и предыдущий только  
нужен Макрос при переходе в TexBox со строчных на прописные?
 
s = "ЗАГЛАВНЫЕ прописные" ' s = Textbox1  
Debug.Print UCase(s), LCase(s)  
 
'Textbox1 = UCase(Textbox1)  
'Textbox2 = LCase(Textbox2)  
'и т.п.
 
СПАСИБО !!!
Страницы: 1
Читают тему
Наверх