السادة المشرفين المحترمين
عندي سوال هام
عندي قاعدة بيانات بها البرنامج وقاعدة اخرى بها الجداول وقمت بعمل ربط بينهم وقد قمت بخفاء الجداول بالقاعدة ولكن هل من كود يقوم باخفاء الجداول المرتبطه في القاعدة الاخرى
وشكرا لكم
السادة المشرفين المحترمين
عندي سوال هام
عندي قاعدة بيانات بها البرنامج وقاعدة اخرى بها الجداول وقمت بعمل ربط بينهم وقد قمت بخفاء الجداول بالقاعدة ولكن هل من كود يقوم باخفاء الجداول المرتبطه في القاعدة الاخرى
وشكرا لكم
اخي الفاضل
السلام عليكم ورحمة الله وبركاته
طالما انك تريد اخفاء الجداول المرتبطة من عبث العابثين فلديك طريقتين الاولى يدوية والثانية بالكود البرمجي
1. افتح قاعدة البيانات التي بها الجداول المرتبطة
2. من شاشة كائنات الاكسيس اضغط بالماوس الايمن على الجدول المرتبط ( لا تفتح الجدول المرتبط )

3. اضغط بالماوس الايمن ثم اختر خصائص

4.قم بالتأشير على وضع مخفي ( ضع بها علامة صح )

5. سيظهر الجدول بلون باهت شفاف
6. سنقوم بإخفاؤه الان من خلال شريط القوائم ثم ادوات ثم خيارات ثم التبويب عرض نقوم ب ازالة علامات الصح من كائنات مخفية

7. الان الجدول سوف يختفي مع باقي الكائنات المخفية
انتقل الان الى قاعدة البياتات التي بها الجداول العادية او قم بإنشاء قاعدة بيانات جديده وحاول استيراد الجدول المرتبط من القاعدة التي اخفينا فيها الجدول
بالطبع لن ترى الجدول ولن تستطيع استيراده بهذه الطريقة
اما عن طريق الكود البرمجي فالامر سهل
ستجد في الملف المرفق قاعدتين بيانات افتح القاعدة ذات الاسم Tables-BE.mdb وستجد بها نموذج به عدد 2 زر واحد لاخفاء الجداول والاخر لاظهار الجداول
ويوجد معها وظيفة خاصة قم بنسخ ما هو موجود في الكود لقاعدة بيانات مع تغيير مسميات الازرار وانظر النتيجة
حاول استيراد اي جدول مرتبط مخفي فلن تستطيع مع العلم بإننا لم نتطرق لخانة حيارات عرض الكائنات المخفية كما في الطريقة اليدوية ففي هذه الطريقة سواء كانت الكائنات مخفية او غير مخفية لن تؤثر في الكود
كود اخفاء الجداول مع عدم امكانية اظهارها من خلال خيارات اظهار كائنات مخفية
Private Sub VisibleTable_Click() Dim db As Database Dim tdf As TableDef Set db = CurrentDb For Each tdf In db.TableDefs If Left(tdf.Name, 4) <> "msys" And tdf.Attributes <> 1073741824 Then tdf.Attributes = tdf.Attributes + dbHiddenObject End If If tdf.Attributes = 1073741824 Then tdf.Attributes = 1 Next db.Close Set tdf = Nothing Set db = Nothing Call ViewTablePage End Sub
كود اظهار الجداول مع عدم امكانية اظهارها من خلال خيارات اظهار الكائنات المخفية
Private Sub ViewTable_Click() Dim dbs As Database, tdf As TableDef Set dbs = CurrentDb For Each tdf In dbs.TableDefs If Left(tdf.Name, 4) <> "msys" _ And tdf.Attributes = 1 Then tdf.Attributes = tdf.Attributes - dbHiddenObject End If If tdf.Attributes = 1073741825 Then tdf.Attributes = 0 Next tdf Set dbs = Nothing Call ViewTablePage End Sub
نلاحظ في الكودين اته يت استداعاء الوظيفة الخاصة Call ViewTablePage اذن نحتاج اليها ايضا
Private Sub ViewTablePage()
DoCmd.SelectObject acTable, , True
SendKeys "{F5}"
End Subوهذا مثال للتطبيق علية
ملاحظة : ضع المجلد MyLink بعد فك الضغط عنه على محرك الاقراص C ليصبح C:\MyLink
اختكم
زهره
السلام عليكم ورحمة الله وبركاته
الاخت العزيزة زهرة
اشكرك جزيل الشكر على ردك الجميل وادعو الله لك بالتوفيق والتقدم
هذا الموضوع مغلق.
المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية
جارٍ التحقق من المتواجدين…