السلام عليكم جميعا
اريد ان اعرف لو كان هناك طريقة لاضافة حقل جديد في الجدول ( حقل وليس سجل ) برمجيا من خلال النموذج
السلام عليكم جميعا
اريد ان اعرف لو كان هناك طريقة لاضافة حقل جديد في الجدول ( حقل وليس سجل ) برمجيا من خلال النموذج
السلام عليكم
سنفترض أن قاعدة البيانات DB1
سنفترض أن الجدول MyTable
سنفترض الحقول المراد اضافتها Nu,Customer
حيث الحقل الرقمى Nu
حيث الحقل النصى Customer
Dim T1 As TableDef
Set T1= db1.TableDefs("MyTable")
With T1
.Fields.Append .CreateField("Nu", dbLong, 50)
.Fields.Append .CreateField("Customer", dbText, 50)
End Withشكرا علي الافاده ولكن كل مرة تظهر رساله
Run-time error "424":
object repuired
ويظهر ظل اصفر علي الكود
Set T1 = db1.TableDefs("MyTable")
tamer_kh_5251 كتب:شكرا علي الافاده ولكن كل مرة تظهر رساله
Run-time error "424":
object repuired
ويظهر ظل اصفر علي الكود
Set T1 = db1.TableDefs("MyTable")
السلام عليكم
هل قمت بتعريف قاعدة البيانات DB1؟
مثل
Dim db1 As Database Set db1 = OpenDatabase(App.Path & "\MyData.mdb")
حيث ان اسم قاعدة البيانات MyData.mdb
اذا ممكن ارفاق مثال
تفضل أخى
ضع هذا الاجراء فى وحدة نمطية أو فى النموذج
Public Sub addColumn(mytbl As String, fld As String, datatybe As Variant)
On Error GoTo fldfound
Dim curDatabase As Object
Dim tblTest As Object
Dim fldNew As Object
Set curDatabase = CurrentDb
Set tblTest = curDatabase.TableDefs(mytbl)
Set fldNew = tblTest.CreateField(fld, datatybe)
tblTest.Fields.Append fldNew
Exit Sub
fldfound:
If Err.Number = 3191 Then MsgBox "هناك حقل بنفس الاسم بالجدول"
End Subو لاستدعائه استخدم هذا الكود اينما تريد
Call addColumn("tab", "customer", dbText)حيث tab هو اسم الجدول
و customer هو اسم الحقل المطلوب اضافته
و dbText هو نوع البيانات للحقل
و هذه أنواع البيانات التى قد تحتاجها
'
dbBigInt Big Integer dbBinary Binary dbBoolean Boolean dbByte Byte dbCurrency Currency dbDate Date / Time dbDecimal Decimal dbDouble Double dbInteger Integer dbLong Long dbLongBinary Long Binary (OLE Object) dbMemo Memo dbSingle Single dbText Text
تم تعديل هذه المشاركة بواسطة Abo_Yossof في 5 يونيو 2011 في 08:39
بارك الله فيك أستاذنا أبو يوسف .. زادك الله علما
اللهم لك الحمد كما ينبغى لجلال وجهك وعظيم سلطانك .. لا إله إلا أنت سبحانك أنى كنت من الظالمين
السلام عليكم ورحمة الله وبركاتة
شكرا جزيلا على المعلومات
اريد ان اعرف كيف يمكن تحديد Field Size
وشكرا
تم تعديل الكود ليمكن اضافة الحجم
Public Sub addColumn(mytbl As String, fld As String, datatybe As Variant, Optional dsize As Variant)
On Error GoTo fldfound
Dim curDatabase As Object
Dim tblTest As Object
Dim fldNew As Object
Set curDatabase = CurrentDb
Set tblTest = curDatabase.TableDefs(mytbl)
If Len(dsize & "") > 0 And datatybe = dbText Then
Set fldNew = tblTest.CreateField(fld, datatybe, dsize)
Else
Set fldNew = tblTest.CreateField(fld, datatybe)
End If
tblTest.Fields.Append fldNew
Exit Sub
fldfound:
If Err.Number = 3191 Then MsgBox "هناك حقل بنفس الاسم بالجدول"
End Sub