يتبقى فقط الإعلان عن الدالة looadkeyboardlayout
#If Win64 Then
Declare PtrSafe Function LoadKeyboardLayout Lib "user32" Alias "LoadKeyboardLayoutA" (ByVal pwszKLID As String, ByVal flags As Long) As Long
#Else
Declare Function LoadKeyboardLayout Lib "user32" Alias "LoadKeyboardLayoutA" (ByVal pwszKLID As String, ByVal flags As Long) As Long
#End If
ويكون الكود في حدث تغيير التحديد في الشيت المطلوب كما هو مشار إليه سابقا
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 4 Then
LoadKeyboardLayout "00000401", 1
Else
LoadKeyboardLayout "00000409", 1
End If
End Sub
وهذا الكود معناه هو تغيير لغة الكتابة إلى العربية السعودية في العمود الرابع D وتغييرها إلى الانجليزية في غيره من الأعمدة