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

كيفية فتح نموذج من شجرة Treeview


Tamer Murad

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

السلام عليكم

اعضاء المنتدى الكرام ارجو مساعدتي في هذا البرنامج

اريد ربط لينكات الشجرة بالفورم الموجودة

وشكرا

 

 

Soft.png

MediaSoft.rar

تم تعديل بواسطه tamer.murad
تكملة
رابط هذا التعليق
شارك

وعليكم السلام 

تفضل اخي الكريم هذا هو الكود المستخدم لفتح اي فورم عندك 

Private Sub TreeView1_Click()
    Dim strFormName As String
    strFormName = TreeView1.SelectedItem.Text
    DoCmd.OpenForm strFormName
End Sub

واليك الملف  بعد التعديل لقد اضفت لك كل النماذج . هل هو المطلوب؟

 

MediaSoft 1.rar

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

السلام عليكم

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

بس عندي استفسار في طريقة ثانية اقدر اضيف فيها اسم الفورم بالانجليزي وليس بالعربي والتري فيو يكون بالعربي بدون التحويل للعربي

وشكرا

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

منذ ساعه, tamer.murad said:

السلام عليكم

كل ماريده هو :

Treeview  يكون عربي

والفورم اسمها يكون انجليزي وليس عربي

نعم أخي الكريم  تفضل 

Private Sub TreeView1_Click()
   
    Dim strFormName As String
    Dim formsDictionary As New Scripting.Dictionary
    formsDictionary.ADD "بيانات الشركة", "frmCompany"
    formsDictionary.ADD "بيانات مستخدمي النظام", "frmSystemUserData"
    formsDictionary.ADD "كلمات المرور", "frmPassword"
    formsDictionary.ADD "بيانات المطورين", "frmDeveloper"
    strFormName = TreeView1.SelectedItem.Text
    If formsDictionary.Exists(strFormName) Then
        DoCmd.OpenForm formsDictionary(strFormName)
    Else
        MsgBox "عذرا هذا النموذج غير موجود", vbExclamation, "تنبيه"
    End If
End Sub

واليك الملف بعد التعديل . 

المكتبات المطلوبة انظر الصورة

بالتوفيق 

المكتبات المطلوبة.jpg

MediaSoft 2.rar

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

14 ساعات مضت, سامي الحداد said:

المكتبات المطلوبة انظر الصورة

استاذنا وخبيرنا / سامى

هذه المكتبات موجودة ومضافة من الاول مع قاعدة البيانات  الا ان الرقم 16 يظهر 14 فى جميع المكتبات

وايضا تظهر رسالة الخطأ السابقة ـ مع العلم ان استخدم ويندوز 2007 وافيس 2010

فما الحل جزاك الله كل خير

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

اخي واستاذي الحبيب @الحلبي

من المحتمل أن تكون المشكلة التي تواجهها متعلقة بالطريقة التي يتم بها التعامل مع النص العربي في الإصدار الأقدم من Office و Windows. في Office 2010 و Windows 7 ، يكون ترميز الأحرف الافتراضي للنص هو ANSI ، والذي قد لا يدعم جميع أحرف Unicode ، بما في ذلك الأحرف العربية. وللتغلب على هذه المشكلة هناك طريقتين الحل الاول هو تغيير ترميز الأحرف الافتراضيه للملفات النصية ، وسوف نغير ترميز الأحرف الافتراضي إلى UTF-8

 ساضع الكود هنا للطريقة الاولى جرب ووافيني بالنتيجة.

Option Explicit

#If Win64 Then
    Private Declare PtrSafe Function SetFileApisToOEM Lib "kernel32" () As Long
    Private Declare PtrSafe Function SetFileApisToANSI Lib "kernel32" () As Long
#Else
    Private Declare Function SetFileApisToOEM Lib "kernel32" () As Long
    Private Declare Function SetFileApisToANSI Lib "kernel32" () As Long
#End If

Private Sub TreeView1_Click()
    Dim strFormName As String
    Dim formsDictionary As New Scripting.Dictionary
    
    SetFileApisToANSI
    System.PrivateProfileString("", "", "")
    System.PrivateProfileString("", "", "")
    SetFileApisToOEM
    System.PrivateProfileString("", "", "")
    System.PrivateProfileString("", "", "")

    formsDictionary.Add "بيانات الشركة", "frmCompany"
    formsDictionary.Add "بيانات مستخدمي النظام", "frmSystemUserData"
    formsDictionary.Add "كلمات المرور", "frmPassword"
    formsDictionary.Add "بيانات المطورين", "frmDeveloper"

      strFormName = TreeView1.SelectedItem.Text
      If formsDictionary.Exists(strFormName) Then
      DoCmd.OpenForm formsDictionary(strFormName)
Else
      MsgBox "عذرا هذا النموذج غير موجود", vbExclamation, "تنبيه"
End If
End Sub

عذرا اخي الدكتور محمد لم اجرب الكود لانني لا املك الويندوز 7 والاوفيس 2010 . بانتظار تجربتك.

تحياتي 

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

32 دقائق مضت, سامي الحداد said:

عذرا اخي الدكتور محمد لم اجرب الكود لانني لا املك الويندوز 7 والاوفيس 2010 . بانتظار تجربتك.

استاذنا ومعلمنا الغالى / سامى الحداد

قاعدة البيانات ترفض تماما اضافة اى شئ داخل محرر الاكواد ـ لا اعرف السبب

على العموم شكرا لك انا حبيت انت تكون عندى هذه الشجرة لصغر كودها لكن انا عندى شجرات تفى بالغرض

وطالما فيها التعامل مع النص العربى و و و و  انا بأبعد عن تلك المشاكل ويكفينى الذى املكه

شاكر جدا لحضرتك وعن وقتك معى انا عارف انك بتحب مساعدة الاخرين ولكن الانشغلات كثيرة

جزاك الله كل خير ـ وبارك الله فيك وفى علمك ـ وزادك الله من رزقه وعلمه  

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

21 ساعات مضت, الحلبي said:

قاعدة البيانات ترفض تماما اضافة اى شئ داخل محرر الاكواد ـ لا اعرف السبب

هل ممكن ان ترفق ملفك حتى نرى اين المشكلة ؟

وجرب هذا التعديل  

Private Sub Form_Load()
    Dim OldLong As Long
    Dim nodX As Node
    Set nodX = TreeView1.Nodes.ADD(, , "R", "أعدادات النظام", 3)
    Set nodX = TreeView1.Nodes.ADD("R", tvwChild, "C1", "بيانات الشركة", 2)
    Set nodX = TreeView1.Nodes.ADD("R", tvwChild, "C2", "بيانات مستخدمي النظام", 5)
    Set nodX = TreeView1.Nodes.ADD("R", tvwChild, "C3", "كلمات المرور", 1)
    Set nodX = TreeView1.Nodes.ADD("R", tvwChild, "C4", "بيانات المطورين", 4)
    nodX.EnsureVisible
    OldLong = GetWindowLong(TreeView1.hwnd, GWL_EXSTYLE)
    SetWindowLong TreeView1.hwnd, GWL_EXSTYLE, OldLong Or WS_EX_LAYOUTRTL
    InvalidateRect hwnd, 0, False
    
    Dim formsDictionary As New Scripting.Dictionary
    formsDictionary.ADD ChrW(&H62A), "frmCompany"
    formsDictionary.ADD ChrW(&H622), "frmSystemUserData"
    formsDictionary.ADD ChrW(&H643), "frmPassword"
    formsDictionary.ADD ChrW(&H62C), "frmDeveloper"

End Sub
Private Sub TreeView1_Click()
   
    Dim strFormName As String
    Dim formsDictionary As New Scripting.Dictionary
    formsDictionary.ADD "بيانات الشركة", "frmCompany"
    formsDictionary.ADD "بيانات مستخدمي النظام", "frmSystemUserData"
    formsDictionary.ADD "كلمات المرور", "frmPassword"
    formsDictionary.ADD "بيانات المطورين", "frmDeveloper"
    strFormName = TreeView1.SelectedItem.Text
    If formsDictionary.Exists(strFormName) Then
        DoCmd.OpenForm formsDictionary(strFormName)
    Else
        MsgBox "عذرا هذا النموذج غير موجود", vbExclamation, "تنبيه"
    End If


End Sub

 

21 ساعات مضت, الحلبي said:

جزاك الله كل خير ـ وبارك الله فيك وفى علمك ـ وزادك الله من رزقه وعلمه

ولك بمثل ما دعوت أخي الدكتور محمد

تحياتي

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

3 ساعات مضت, سامي الحداد said:

هل ممكن ان ترفق ملفك حتى نرى اين المشكلة

الغالى الاستاذ/ سامى

المرفق هو نفس المرفق الذى حضرتك ارفقته اعلاه

اعانك الله علينا ودام عليك نعمة مساعدة الاخرين

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

8 ساعات مضت, سامي الحداد said:

كلا استاذي الكريم محمد هذا الكود يختلف عن السابق انظر للاكواد هنا في المشاركتين. 

8 ساعات مضت, سامي الحداد said:
Dim formsDictionary As New Scripting.Dictionary
    formsDictionary.ADD ChrW(&H62A), "frmCompany"
    formsDictionary.ADD ChrW(&H622), "frmSystemUserData"
    formsDictionary.ADD ChrW(&H643), "frmPassword"
    formsDictionary.ADD ChrW(&H62C), "frmDeveloper"
4 ساعات مضت, الحلبي said:

اعانك الله علينا ودام عليك نعمة مساعدة الاخرين

 بخدمتكم استاذي الكريم 

تحياتي

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

1 ساعه مضت, سامي الحداد said:

بخدمتكم استاذي الكريم 

شاكر جدا لحضرتك

انا اتلخبط قوى وتشابه عليا الامر

اكيد حضرتك صح ـ ممكن حضرتك تضع الكود كامل فى المثال وترسله لى ـ اكون شاكر جدا ـ وان لم يكن هناك مجال لذلك فأعتبر الموضوع منتهى عندى

وجزاك الله كل خير

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

حياك الله اخي الدكتور محمد

اليك ثلاثة ملفات باكواد مختلفة وجميعها تعمل بشكل صحيح مع الويندوز 10 والاوفيس 2019 .

وكما ذكرت سابقا لن استطع التطبيق على الويندوز 7 والاوفس 2010 لانني لا املكهم.

اتمنى من باقي الاعضاء والاساتذة ممن لديهم إمكانية تجربة الملف وإبداء الرأي حتى نستطيع حل المشكلة. 

وكنت أتمنى من الاخ @tamer.murad صاحب الموضوع ان  يبدي رأيه أيضا. 

تحياتي لشخصكم الكريم 

1275940712_AllVer.MediaSoft.rar

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

السلام عليكم

اخي العزيز @سامي الحداداشكرك كل الشكر حيث ان الكود الذي كتبته حضرتك في اول مشاركة هو ماكنت اريده اخذته وقمت بازالة الرسالة وتركت موضوع النقاش للأخ @الحلبيلكي ياخذ مساحة للنقاش ولكي اعطيه وقته وكنت اتابع النقاش

مرة اخرى اشكركم جميعا على هذا المجهود الذي تبذلونه لمساعدة اخوتكم في الله

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

2 ساعات مضت, سامي الحداد said:

ليك ثلاثة ملفات باكواد مختلفة وجميعها تعمل بشكل صحيح مع الويندوز 10 والاوفيس 2019 .

للاسف لم يعمل معى اى من الملفات الثلاثة

انا تعبتك معى يااستاذ / سامى يظهر ان لازم احد الاخوان يشارك معنا ويحمل قاعدة البيانات ويكون عنده ويندوز 7 وافيس 2010 ويعرف اين الخطأ

لكن لا تهتم بالامر اخى الغالى انا صرفت نظر عن هذه الشجرة

ولكن اريد ان اقول لك كلمة صغيرة ان انا املك لاب توب عليه ويندوز 10 ولكنى لا احب ان اعمل على هذا الاصدار (مش عارف ليه) وفعلا اشتغلت عليه الشجرة تمام

لكن المشكلة عندى فى العمل كل الموظفين عندهم 7 ـ و2010 ولهذا كنت اريد ان اعمل لهم شجرة للاصناف التى نعمل بها

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

كل احترام وتقدير لشخصكم الكريم

41 دقائق مضت, tamer.murad said:

وتركت موضوع النقاش للأخ @الحلبي

الاستاذ / تامر

اشكرك جزيل الشكر على احترامك للاخرين واشكرك على اتاحة الفرصة لى للمناقشة 

جزاك الله كل خير

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

6 دقائق مضت, tamer.murad said:

ارجو ارفاق الملف الذي تحتاج التعديل عليه وسوف يقوم الزملاء بمساعدتك فورا انشاء الله

الملفات الثلاثة موجودة فى اخر مشاركة للاستاذ / سامى

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

اخي الحلبي

المشكلة في الاصدار كما ذكرت .. الاداة الموجودة في الامثله كلها لا تعمل على الاصدار 7 وما قبله .. حتى لو بدلت الاداة الى 5 الأقدم فلن تعمل لان الاكواد تعمل على مكتبة لا تعمل في 7

ليس امامك الا ان ترفق مثالك

يكفي من المثال ما احاط بالعنق :smile: اقصد قدر الحاجة

 

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

8 ساعات مضت, ابوخليل said:

ليس امامك الا ان ترفق مثالك

استاذنا ومعملنا الجدير الغالى / ابو خليل

استاذى المثال ليس لى بل هو موجود اعلاه المهم ان يكون عندك ويندوز 7  وافيس2010

يعنى حضرتك حمل اى مثال من اعلى - وجرب حضرتك عليه

جزاك الله كل خير ـ واطال عمرك 

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

لم اكتب الا بعد التجربة

اعمل على اجهزة كما عندك .. وندوز7 واوفيس 10

ولم تعمل عندي 

السؤال : ما ذا تريد وما هي حاجتك من هذه الأمثلة ؟

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

السلام عليكم

عندي سؤال اخوتي في الله

الكود المرفق هو لفتح الفورم فقط هل من الممكن التعديل عليه بحث يفتح تقارير وفورم  DoCmd.OpenReport "EmployeeReport", acViewReport

وسؤال ثاني هل لما اضغط على فورم او تقرير يفتح مدمج في الجزء الثاني يعني فورم فرعي
 

Private Sub TreeView1_Click()
   
    Dim strFormName As String
    Dim formsDictionary As New Scripting.Dictionary
    formsDictionary.ADD "بيانات الشركة", "frmCompany"
    formsDictionary.ADD "بيانات مستخدمي النظام", "frmSystemUserData"
    formsDictionary.ADD "كلمات المرور", "frmPassword"
    formsDictionary.ADD "بيانات المطورين", "frmDeveloper"
    strFormName = TreeView1.SelectedItem.Text
    If formsDictionary.Exists(strFormName) Then
        DoCmd.OpenForm formsDictionary(strFormName)
    Else
        MsgBox "عذرا هذا النموذج غير موجود", vbExclamation, "تنبيه"
    End If


End Sub

 

Episode5Complete.jpg

Untitled.png

تم تعديل بواسطه tamer.murad
رابط هذا التعليق
شارك

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