اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

أبحث عن كود لإجبار نطاق محدد على الكتابة باللغة العربية ولو حتى كان الكيبورد إنجليزى


أناناس
إذهب إلى أفضل إجابة Solved by Ali Mohamed Ali,

الردود الموصى بها

يفضل إرفاق الملف للتعديل عليه

الأكواد موجودة المهم طريقة توظيفها

رابط هذا التعليق
شارك

  • أفضل إجابة
رابط هذا التعليق
شارك

هذا أسهل كود

ويمكنك توظيفه كما تشاء

مثلما فعل الأستاذ فتحي البنا في الملف المرفق من الأستاذ علي محمد علي

رابط هذا التعليق
شارك

( D5 : D 500 ) ما ابحث عنه كود يقوم باجبار النطاق

فى الصفحة ٍٍSheet 3

على الكتابة باللغة العربية

ويكون النطاق والصفحة محدد فى الكود

وبوركت مجهوداتكم

رابط هذا التعليق
شارك

ممكن تستعمل الكود الموجود في الملف السابق مع تعديل العمود إلى 4

If Target.Column = 4 Then
LoadKeyboardLayout "00000401", 1
Else
LoadKeyboardLayout "00000409", 1
End If

سيجعل اللغة العربية في العمود d والانجليزية في غيره

  • Thanks 1
رابط هذا التعليق
شارك

جزاك الله خيرا استاذ محمد صالح

شعله نشاط يكتبه الله في كفه حسناتك

وبعد

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target Then
ChaingeLanguage "Arabic"
'Else
'ChaingeLanguage "English"
End If
End Sub

هل التغيير الذي حدث يؤثر على الكود

لاني عايز الملف كله يكتب بالعربي

رابط هذا التعليق
شارك

شكرا لكلماتك الطيبة

لايوجد تغيير في الكود

فقط اختصار الدالة 

ChaingeLanguage "Arabic"

إلى مضمونها وهو هذا السطر

LoadKeyboardLayout "00000401", 1

ويمكن الاستغناء عن الدالتين الموجودين في الموديول

ويتبقى فقط الإعلان declare في الموديول

  • Like 2
رابط هذا التعليق
شارك

7 ساعات مضت, ناصر سعيد said:

ويتبقى فقط الإعلان declare عن الدالة في الموديول ( اقتباس )

من فضلك ضع الكود في حلته الجديده

يتبقى فقط الإعلان عن الدالة 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 وتغييرها إلى الانجليزية في غيره من الأعمدة

  • Thanks 1
رابط هذا التعليق
شارك

زائر
هذا الموضوع مغلق.
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information