الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

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

مغلقمُجاب
بدأه طالب علم مبتدىء في 26 ديسمبر 2013 · 7 رد · 818 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

استفسارى كيف انشاء حقل ضمن الجدول بالكود يكون قائمة منسدله ويطالبنى بالقيم اللتى سوف تظهر بالقائمه

رابط المشاركه /index.php/topic/144265-تمت-الإجابة-انشاء-الجداول-والفهارس-والعلاقات-و/?p=726691

#2

اخي الفاضل : احمد

 

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

 

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

 

1. لنفرض ان لدينا جدول اسمه  Table1  ويوجد به حقل وحيد وهو ID 

 

post-15367-0-27784000-1388086985.gif

 

 

2. نريد الآن اضافة حقل جديد واسمه  sName  من نوع ListBox  ونضع به القيم التي نريدها مثل  ( zahrah1 ,zahrah2 , zahrah3  ) 

 

3. اذا الخطوة الأولى هي انشاء نموذج لا علاقة له بالجدول ابدا وليس له مصدر سجلات ونضع به زر أمر 

 

post-15367-0-74099200-1388087156_thumb.g

 

نضع تحت زر الأمر كود إنشاء الحقل sName  مع تغيير خصائصه وعند الضغط على زر الأمر سوف يقوم الكود البرمجي بعمل اللازم

 

post-15367-0-55286300-1388087406_thumb.g

 

ولهذا يجب ان نتأكد من الجدول هل تم اصافة الحقل sNAME وتم تحويله الى مربع قائمة وبه القيم المطلوبه أم لا  ( دعنا نتأكد من ذلك )

 

post-15367-0-42893100-1388087498.gif

 

ولو نظرنا الى خصائص الحقل sName في الجدول سنجدها مطابقة لما تم عمله بالكود البرمجي

 

post-15367-0-69686700-1388087643_thumb.g

 

 

 

 

za-CreatNewField.rar

 

 

بالتوفيق

3
#3

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

هذا اذا كان الجدول موجود

طيب واذا لم يكن موجود وسيتم انشائه بكود برمجى مثل المثال اللذى قمتى بعمله من قبل على الرابط المرفق فكيف يكون يا ام عهود

وهل من الممكن عند انشاء الجدول بالكود وبه القائمة المنسدله يظهر شاشة لاضافة القيم المراد اظهارها بالقائمه مثل معالج البحث المضمن بالاكسيس

#4

تفضل اخي الكريم

 

سيكون انشاء الجدول مع الحقول الخاصة به بالكود البرمجي بهذه الطريقة

Private Sub CmdCreatNewTable_Click()
Dim dbs As DAO.Database
Dim strFieldName As String
Dim strSQL As String
strSQL = "CREATE TABLE [Table1] ([ID] AUTOINCREMENT,[sName] TEXT(25)  NOT NULL,CONSTRAINT [PrimaryKey] PRIMARY KEY ([ID]));"
DoCmd.RunSQL strSQL
Set dbs = CurrentDb
With dbs.TableDefs("Table1").Fields("sName")
.Properties.Append .CreateProperty("DisplayControl", dbInteger, AcControlType.acListBox)
        .Properties.Append .CreateProperty("RowSourceType", dbText, "Value List")
        .Properties.Append .CreateProperty("RowSource", dbText, "'zahrah1';'zahrah2';'zahrah3';" & _
                                           "'zahrah4';'zahrah5';'zahrah6'")
        .Properties.Append .CreateProperty("ColumnCount", dbInteger, 1)
        .Properties.Append .CreateProperty("ColumnHeads", dbBoolean, False)
        .Properties.Append .CreateProperty("ListRows", dbInteger, 10)
        .Properties.Append .CreateProperty("ListWidth", dbText, -1)
        .Properties.Append .CreateProperty("LimitToList", dbBoolean, False)
        .Properties.Refresh
End With
MsgBox " مبروك تم انشاء الجدول بنجاح ", vbInformation, " مبروك "
dbs.Close
Set dbs = Nothing
End Sub

تم تعديل هذه المشاركة بواسطة zahrah في 27 ديسمبر 2013 في 07:44

1
#5

ما شاءالله اخت زهرة عمل رائع 

طيب انا عندي استفسار نموذج الذي تم انشاءه يقوم بانشاء حقل محدد اسمه (sname) و يقوم بادخال بيانات محدده فيه داخل الكود

 

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

#6
zahrah كتب:

 

تفضل اخي الكريم

 

سيكون انشاء الجدول مع الحقول الخاصة به بالكود البرمجي بهذه الطريقة

Private Sub CmdCreatNewTable_Click()
Dim dbs As DAO.Database
Dim strFieldName As String
Dim strSQL As String
strSQL = "CREATE TABLE [Table1] ([ID] AUTOINCREMENT,[sName] TEXT(25)  NOT NULL,CONSTRAINT [PrimaryKey] PRIMARY KEY ([ID]));"
DoCmd.RunSQL strSQL
Set dbs = CurrentDb
With dbs.TableDefs("Table1").Fields("sName")
.Properties.Append .CreateProperty("DisplayControl", dbInteger, AcControlType.acListBox)
        .Properties.Append .CreateProperty("RowSourceType", dbText, "Value List")
        .Properties.Append .CreateProperty("RowSource", dbText, "'zahrah1';'zahrah2';'zahrah3';" & _
                                           "'zahrah4';'zahrah5';'zahrah6'")
        .Properties.Append .CreateProperty("ColumnCount", dbInteger, 1)
        .Properties.Append .CreateProperty("ColumnHeads", dbBoolean, False)
        .Properties.Append .CreateProperty("ListRows", dbInteger, 10)
        .Properties.Append .CreateProperty("ListWidth", dbText, -1)
        .Properties.Append .CreateProperty("LimitToList", dbBoolean, False)
        .Properties.Refresh
End With

MsgBox " مبروك تم انشاء الجدول بنجاح ", vbInformation, " مبروك "
dbs.Close
Set dbs = Nothing
End Sub

 

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

وقمت بحذف صغير بالكود ناتج عن السرعه قد حذفت End If  قبل المسج وحذفت 1 من strSQL اللتى فى امر انشاء الجدول

وقمت بالتجربه ونجت تمام وقمت بحذف الوحده النمطيه اللتى بالمشاركة 2 وقمت بالتجربه ونجحت ايضا

 

ويتبقى جزء صغير هل من الممكن عدم اضافة القيم بالكود ويظهر نموذج لاضافة القيم المراد اظهارها بالقائمه مثل معالج البحث المضمن بالاكسيس

#7 أفضل إجابة
طالب علم مبتدىء كتب:

 

ويتبقى جزء صغير هل من الممكن عدم اضافة القيم بالكود ويظهر نموذج لاضافة القيم المراد اظهارها بالقائمه مثل معالج البحث المضمن بالاكسيس

 

نعم اخي الكريم يمكن عمل ذلك بالكود البرمجي بهذه الطريقة

 

1. اولا سيتم إنشاء الجدول وإنشاء الحقول بداخله بواسطة الكود

 

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

 

post-15367-0-52312500-1388140922_thumb.g

 

3. بإمكانك حذف القيم السابقة جميعها واستبدالها بقيم جديده او إضافة قيم الى القيم السابقة وبعد ذلك قم بإغلاق نموذج الإضافة

 

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

 

post-15367-0-71415300-1388141231.gif

 

 

 

 

 

za-CreatNewTable.rar

 

 

بالتوفيق

1
#8

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

فاسال الله انا يجازيكى عنا خير الجزاء ويبارك لكى فى عهود وشهد

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…