اذهب الي المحتوي
أوفيسنا

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

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

السلام عليكم ...

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

CaptureWiz003.jpg

فهل هناك كود يقوم بحذف العلاقات بين الجداول ( جدولين أو أكثر ) محددة في الكود ...

ثم يقوم بأستيراد جدوال من قاعدة بيانات ( محد مسارها في الكود ) ونسخها في القاعدة الحالية التي يوجد بها الكود ؟؟!!

والمثال مرفق هنا :

المثال هنا

تم تعديل بواسطه فتى الوادي
قام بنشر

السلام عليكم

أخي فتى الوادي :fff: ، بارك الله فيك

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

2. في البرنامج المرفق يمكنك اختيار العلاقة التي تريد حذفها من كومبو وهو يطلب الاقتران السابق ويحذف العلاقة.

مع الاحترام

DeleteRelationByVBA.rar

قام بنشر

:fff::fff: جميل جداً يا اخي خضر ... :fff::fff:

لكن انا اريد كود يقوم بالأتي :

1- حذف الجداول الموجودة في القاعدة الحالية ( سواءً كانت بعلاقة أو بغير علاقة )

2- استيراد جداول من قاعدة محدد مسارها في الكود

3- وسلامتك ومن يقرا ومن يقول . :fff::fff::fff:

قام بنشر

السلام عليكم

ايه الحكاية يا جماعة .. حبكت على كذا ...

طيب :

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

ونترك قضية استيراد الجداول بواسطة الماكرو .....

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

قام بنشر

السلام عليكم

أخي فتى الوادي :fff: ، بارك الله فيك

المثال التالي يحذف الجداول و/أو العلاقات حسب طلبك.

مع الاحترام

DeleteRelationOrTableByVBA.rar

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

السلام عليكم ...

أخي خضر .... أعجز عن شكرك ... غفر الله لي ولك ....

لكن أنا أريد حذف الجداول والعلاقات بدون أن اقوم بأختيارها ....

يعني يحذف الجداول الموجودة في القاعدة مها كان عددها ومهما كان علاقاتها ....

لقد اطلت عليك .... لكن احتسب الأجر ...

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

تم تعديل بواسطه فتى الوادي
قام بنشر (معدل)

اتبع ما يلي :

1- قم بإنشاء وحدة نمطية وضع فيها الكود التالى :

CODEFunction DeleteAll()
   Dim dbs As DAO.Database
   Dim i As Integer
   Set dbs = CurrentDb

   ' Loop backwards through relations
   For i = dbs.Relations.Count - 1 To 0 Step -1
       dbs.Relations.Delete dbs.Relations(i).Name
   Next i

   ' Loop backwards through tabledefs
   For i = dbs.TableDefs.Count - 1 To 0 Step -1
       If Left(dbs.TableDefs(i).Name, 4) <> "MSys" Then
           dbs.TableDefs.Delete dbs.TableDefs(i).Name
       End If
   Next i

   Set dbs = Nothing
End Function
2- ضع زر فى نموذج جديد وفى حدث عند النقر ضع ما يلي :
CODE=DeleteAll()

وهي من منشء التعبيرللدالة المذكوره أعلاه .

جرب وشوف النتيجة . ستجد إن شاء الله الجداول كلها تم حذفها .

تم تعديل بواسطه ashraf

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