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

فتح قاعدة بيانات مسارها محدد من قاعدة بيانات أخرى


AboSaad17

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

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

لدي قاعدتين في مجلد واحد معروفة المكان . و لدي قاعدة ثالثة  أريد من خلالها فتح إحدى القاعدتين حسب الاختيار من مربع القائمة كما في الصورة 

ولكم جزيل الشكــر ،،،

 

open_D1.png

Iraq.mdb Masr.mdb 3.mdb

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

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

اتفضل اخى @AboSaad17 ان شاء الله يكون ما تريد

تم الاستعانه بالرابط التالى لاضافه المتغير لانه لم يكن يراه

https://forums.techguy.org/threads/access-2003-correct-use-of-vba-shell-command.473952/

Private Sub choose_Click()
    
Dim X, d

X = DLookup("[name1]", "[Dchoose]", "[Name2] ='" & name1.Column(2) & "'")
d = CurrentProject.Path & "\" & X
Shell ("C:\Program Files\Microsoft Office\OFFICE11\MSACCESS.EXE " & d), vbNormalNoFocus

'محاولات غير ناجحه

End Sub

بالتوفيق ان شاء الله

3.rar

تم تعديل بواسطه أحمد الفلاحجى
  • Like 1
رابط هذا التعليق
شارك

الف شـكـــر  اخي :  أحمد الفلاحجى

هذا هو المطلوب 

ولكـن هـناك  ملاحــظـة وهـي 

قمت بإضافة قاعدة بيانات أخرى باسم جديد ولم تفتح من خلال القاعدة 3 

مع العلم أن القاعدتين السابقة تفتح 

علما أن الاسم في الجدول مطابق لاسم القاعدة الجديدة 

أمل منك النظر في هذه الملاحظة ولك جــزيل الـشـكر 

بحيث لو أردت إضافة العديد من قواعد البيانات يتم الفتح

 

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

2 دقائق مضت, kanory said:

مشاركة مع استاذي الفاضل @احمد الفلاحجي بارك الله فيه

أنظر المرفق ....

kan.mdb 264 kB · 0 تنزيلات

جزاك الله خيرا اخى واستاذى @kanory :fff:

اخى @AboSaad17 قمت باضافه قاعده اخرى وتم فتحها بدون مشاكل

وتم اضافه اخرى باسم عربى وهناك ملاحظه (ترقيم تلقائي) لابد ان يكون الاسم متصل (ترقيم_تلقائي)

وقمت بتجربه اضافه مسافه فى الاسم الانجليزى ونفس المشكله

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

وسوف احاول فيها او يساعدنا احد اخواننا واساتذتنا فيها ان شاء الله

تقبل تحياتى وتمنياتى لكم وللجميع بالتوفيق

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

الف شكـر اخي الفاضل أحمد الفلاحجى

ملاحظتي الأولى لم تكن مكتملة حيث كان الحل الذي قمت به هو فتح القاعدة حسب أسم النموذج وليس حسب اسم القاعدة 
والمطلوب هو فتح القاعدة حسب إسمها 

على كل حال لك جــزيل الــشـكر .....  ولو استطعت أن أجد حل في شروح الاستاذ   @kanory   سأورده هناء

وإذا لم أجد حل فلا نستغني عن إيجاد حل منك أو من خبراء هذا المنتدى 

 

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

13 دقائق مضت, AboSaad17 said:

الف شكـر اخي الفاضل أحمد الفلاحجى

ملاحظتي الأولى لم تكن مكتملة حيث كان الحل الذي قمت به هو فتح القاعدة حسب أسم النموذج وليس حسب اسم القاعدة 
والمطلوب هو فتح القاعدة حسب إسمها 

على كل حال لك جــزيل الــشـكر .....  ولو استطعت أن أجد حل في شروح الاستاذ   @kanory   سأورده هناء

وإذا لم أجد حل فلا نستغني عن إيجاد حل منك أو من خبراء هذا المنتدى 

 

يتم فتح القاعده بناء على اسمها Masr عندما تختار مصر بالعربى

او Iraq عندما تختار العراق

وذلك بجلب الاسم المقابل للاسم العربى من الجدول

لعلى لم افهم طلبك وان شاء الله احد اخواننا واساتذتنا يساعدون

بالتوفيق اخى

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

بعد أذنك أخي الاستاذ @احمد الفلاحجي 

في نفس مثال أخي الاستاذ @kanory ضع هذا الكود بدلا من الكود الموجود .......

Dim X, d As String
Dim strDB As String
X = DLookup("[name1]", "[Dchoose]", "[Name2] ='" & name1.Column(2) & "'")
If IsNull(Me.name1) Then
      MsgBox "ÚÐÑÇ ÇÎí ÇáßÑíã ... áã ÊÞã ÈÅÎÊíÇÑ ãÓÇÑ ÇáãáÝ", vbCritical, "ÇÏÎá ãÓÇÑ ÇáãáÝ"
      DoCmd.CancelEvent
Else
        strDB = "D:\Saas\" & X & ".mdb"
        Set appAccess = CreateObject("Access.Application")
        appAccess.OpenCurrentDatabase strDB
        appAccess.Visible = True

End If

 

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

الف شكر استاذ  Barna

نعم هذا هو المطلوب :fff:

ولكن لاحظت

1- ان القاعدة المطلوبة احيانا تفتح في وضع التصغير
2- احيانا يفتح النموذج ولكن في الخلف ويكون الاطار الاساسي للاكسس وسط الشاشة في الحالتين !

فهل من حل لهذه المشكلة  ؟؟ بحيث يفتح الاطار ملئ الشاشة ويكون النموذج في المقدمة .

والشـكر موصول لكل من الاخوة   :fff:   أحمد الفلاحجى     و     kanory     :fff:

 

 

 

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

5 ساعات مضت, Barna said:

بعد أذنك أخي الاستاذ @احمد الفلاحجي 

في نفس مثال أخي الاستاذ @kanory ضع هذا الكود بدلا من الكود الموجود .......


Dim X, d As String
Dim strDB As String
X = DLookup("[name1]", "[Dchoose]", "[Name2] ='" & name1.Column(2) & "'")
If IsNull(Me.name1) Then
      MsgBox "ÚÐÑÇ ÇÎí ÇáßÑíã ... áã ÊÞã ÈÅÎÊíÇÑ ãÓÇÑ ÇáãáÝ", vbCritical, "ÇÏÎá ãÓÇÑ ÇáãáÝ"
      DoCmd.CancelEvent
Else
        strDB = "D:\Saas\" & X & ".mdb"
        Set appAccess = CreateObject("Access.Application")
        appAccess.OpenCurrentDatabase strDB
        appAccess.Visible = True

End If

 

جزاكم الله خيرا اخوانى واساتذتى محمد @Barna و @kanory :fff: :fff:

تقبلوا تحياتى وتمنياتى لكم وللجميع بالتوفيق

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

2 ساعات مضت, AboSaad17 said:

ولكن لاحظت

1- ان القاعدة المطلوبة احيانا تفتح في وضع التصغير
2- احيانا يفتح النموذج ولكن في الخلف ويكون الاطار الاساسي للاكسس وسط الشاشة في الحالتين !

فهل من حل لهذه المشكلة  ؟؟ بحيث يفتح الاطار ملئ الشاشة ويكون النموذج في المقدمة .

اولا : احذف هذا السطر لا تحتاجه

appAccess.Visible = False

ثم عدل في بعض خصائص النموذج للقاعدتين الاخرى ....... حتى تصل للنتيجة المرغوبة .....

 

1.png

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

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

الاستاذ الفاضل :   Barna 

اولا أكرر شكري لك 

ثانيا في خصائص النموذج لم أجدالاحتواء ضمن الشاشة ) الأوفيس   2003 

ولا تزال مشكلة فتح القاعدة المختارة  ( حيث يتم فتح النموذج خلف النموذج الأساسي لاختيار القواعد ) والاطار يكون في وسط الشاشة 

قمت بإضافة أمر إغلاق القاعدة الاولى بعد تنفيذ أمر الفتح ولكن يبقى إطار أكسس للقاعدة المختارة في وسط الشاشة ايضا ؟!

يمكن الاحتواء ضمن الشاشة هو الحل ولكن لم أجد هذا الخيار  ! ؟ 

Bar3.png

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

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

الاساتذة الكــرام

في هذا المرفق تم التعديل على الكــود واصبح يفتح القاعدة المختارة في الواجهه مع إطار ملئ الشاشة والحمد لله

هناك سـؤال :

في حال اختيار اسم قاعدة وهي ليس موجودة أصلا فهل من إضافة رسالة على الكـود تفيد أن القاعدة ليس من ضمن القائمة ؟

ولكم جــزيل الـشــكـر 

المرفق بعد التعديل

‫Re‫‫‫kan3 -.mdb

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

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

الاساتذة الكــرام

في المرفق السابق تم التعديل على الكــود واصبح يفتح القاعدة المختارة في الواجهه مع إطار ملئ الشاشة 
ولكــن ظهر فيه مشـكـلة حيث لا يفتح القاعدة في  موقع  C:\
Program Files\Saas

الأن في هذا المرفق تم التعديل واصبح يفتح القاعدة المختارة في أي موقع بعد تجارب 
Shell ("C:\Program Files\Microsoft Office\OFFICE11\MSACCESS.EXE  ""C:\Program Files\Saas\" & X & ".mdb"), vbNormalNoFocus
 

أكـرر شـكري للاساتذة الـكرم 

وهذا هو المرفق بعد التعديل والله من وراء القصد

‫Re‫‫‫kan4 -.mdb

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

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