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

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

قام بنشر

السلام عليكم ورحمة الله

 

أخي الكريم، لا أعتقد أن ذلك متاح في إكسيل... الفكرة الوحيدة التي أعرفها (وأعتقد أن الجميع يعرفها) هي استعمال الاختصار ALT+SHIFT (مفتاح SHIFT اليمين أو اليسار) وهو الذي يسمح بالتحول من لغة لأخرى... بالنسبة للأكواد لا أعرف كودا -إن وُجد- يقوم بذلك...

 

ومعذرة لعدم المساعدة...

 

أخوك بن علية

قام بنشر

السلام عليكم ورحمة الله

 

أخي الكريم حمادة، رائع جدا هذا الكود ولم أكن أعرف أن ذلك ممكن... المهم جميل جدا زادك الله من علمه ومن نعيمه وجازاك الله عنا كل خير في الدنيا والآخرة...

 

أخوك بن علية

قام بنشر

السلام عليكم ورحمة الله

 

أخي الكريم حمادة، رائع جدا هذا الكود ولم أكن أعرف أن ذلك ممكن... المهم جميل جدا زادك الله من علمه ومن نعيمه وجازاك الله عنا كل خير في الدنيا والآخرة...

 

أخوك بن علية

شكرا لك وجزاك الله خيرا علي حبك لخدمة إخوانك ومساعدتهم

قام بنشر

 

السلام عليكم ورحمة الله

 

أخي الكريم حمادة، رائع جدا هذا الكود ولم أكن أعرف أن ذلك ممكن... المهم جميل جدا زادك الله من علمه ومن نعيمه وجازاك الله عنا كل خير في الدنيا والآخرة...

 

أخوك بن علية

شكرا لك وجزاك الله خيرا علي حبك لخدمة إخوانك ومساعدتهم

 

هل لك ان تساعدنى فى جعل الملف المرفق

حانه الرقم فى جميع الشيتات تكون لغه الكتابه الانجليزيه

ابتداء من b5 to b 32

قام بنشر

السلام عليكم

بعد اذن الاخ الفاضل حمادة باشا

 

 

هذا كود الاخ حمادة باشا بتعديل بسيط

الصق الكود في حدث Thisworkbook

Private Sub Workbook_Open()
layout_changed = False
End Sub
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
If Intersect(Target, Range("B5:B32")) Is Nothing Then
    If layout_changed = False Then
        SendKeys "%+"
        layout_changed = True
    End If
Else
If layout_changed = True Then
        SendKeys "%+"
        layout_changed = False
End If
End If
End Sub

جرب ارجو ان يزبط معك

مانفست كلابشة_1.rar

  • Like 1
قام بنشر

او استخدم هذا الكود اضمن

الصق الكود التالي في مودويل

Public Declare Function LoadKeyboardLayout Lib "user32" Alias "LoadKeyboardLayoutA" (ByVal pwszKLID As String, ByVal flags As Long) As Long

والكود التالي في حدث Thisworkbook

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Set Sh = ActiveSheet
If Not Intersect(Target, Sh.Range("B5:B32")) Is Nothing Then
LoadKeyboardLayout "00000409", 1
Else
LoadKeyboardLayout "00000401", 1
End If
End Sub
قام بنشر

الاخ العزيز

كل شئ تمام فى جميع الشيتات عدا شيت الاتوبيس

حيث عن الكتابه فى الرقم بالانجليزيه  لا يكتب العربيه عند الانتقال الى خليه اخرى ( العوده )

ارجو اتمام المقصود

جزاك الله كل الخير على مجهودك

مانفست كلابشة2.rar

قام بنشر

السلام عليكم

بعد اذن الاخ الفاضل حمادة باشا

 

 

هذا كود الاخ حمادة باشا بتعديل بسيط

الصق الكود في حدث Thisworkbook

Private Sub Workbook_Open()
layout_changed = False
End Sub
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
If Intersect(Target, Range("B5:B32")) Is Nothing Then
    If layout_changed = False Then
        SendKeys "%+"
        layout_changed = True
    End If
Else
If layout_changed = True Then
        SendKeys "%+"
        layout_changed = False
End If
End If
End Sub

جرب ارجو ان يزبط معك

اخى العزيز.... جزاك الله كل الخير

ولك منى الف شكرا على مجهودك وسعيك الى المساعده

قام بنشر (معدل)

السلام عليكم

الكود الاخير بعد التجربه يسبب ثقل على الملف

استخدم هذا التعديل

 

الكود التالي في مودويل

 
Const KL_NAMELENGTH = 9
Const KT_TYPE = 0
Const KT_SUBTYPE = 1
Const KT_FUNCTIONKEYS = 2
Public Declare Function GetKeyboardLayoutName Lib "user32" Alias "GetKeyboardLayoutNameA" (ByVal pwszKLID As String) As Long
Public Declare Function GetKeyboardType Lib "user32" (ByVal nTypeFlag As Long) As Long
Public Bn As Boolean
Public Function Ch_Bn() As String
Dim S_nm As String
S_nm = String(KL_NAMELENGTH, 0)
GetKeyboardLayoutName S_nm
Ern = IIf(Right(S_nm, 2) = 1, "Ar", "En")
Ch_Bn = Ern
End Function
Sub Dir_B()
Ch_Bn
Select Case Ch_Bn
       Case Is = "Ar"
       Bn = True
       Debug.Print Bn
       Case Is = "En"
       Bn = False
       Debug.Print Bn
End Select
End Sub

وهذا الكود في حدث Thisworkbook

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Set Sh = ActiveSheet
If Not Intersect(Target, Sh.Range("B5:B32")) Is Nothing Then
 Call Dir_B
 If Bn = True Then SendKeys "%+"
Else
 Call Dir_B
 If Bn = False Then SendKeys "%+"
End If
End Sub

مانفست كلابشة_Ali.rar

تم تعديل بواسطه عباد
  • Like 1
قام بنشر

الاخ العزيز

كل شئ تمام فى جميع الشيتات عدا شيت الاتوبيس

حيث عن الكتابه فى الرقم بالانجليزيه  لا يكتب العربيه عند الانتقال الى خليه اخرى ( العوده )

ارجو اتمام المقصود

جزاك الله كل الخير على مجهودك

الأخ/ حمادة

السلام عليكم ورحمة الله وبركاته

هل مازالت هناك مشكلة في الملف - صفحة الأتوبيس تعمل لدي بشكل جيد ( ينتقل إلي الإنجليزية في عمود الرقم وتعود إلي العربية في الأعمدة الأخري )

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

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

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

Important Information