safaa salem5 قام بنشر سبتمبر 1 مشاركة قام بنشر سبتمبر 1 (معدل) عند الضغط على close تخرج رساله كالاتى حدث خطأ اثناء حفظ البيانات the microsoft access database engine does not recognise 'main' as a vaild name or expression انا اكتشفت ان الرساله بتخرج فقط فى حاله وجود سجل فى الجدول اما فى حالة عدم وجود سجل(اضافة السجل لاول مره ) لاتخرج رساله ويعمل بشكل طبيعى مع العلم ان المفروض الجدول دا عباره عن سجل واحد فقط لاغير لانه جدول اعدادات ممكن تحديث حقوله فقط Private Sub SaveColorToTable() Dim db As DAO.Database Dim rs As DAO.Recordset Dim activeField As String Dim fieldNamePrefix As String Dim criteria As String On Error GoTo ErrorHandler ' الحصول على الحقل النشط من النموذج activeField = Forms!settings_font_color_frm.activeField ' التحقق مما إذا كان النموذج محملاً If CurrentProject.AllForms("settings_font_color_frm").IsLoaded Then ' تعيين قاعدة البيانات وفتح سجل Set db = CurrentDb Set rs = db.OpenRecordset("settings_Report_tbl", dbOpenDynaset) ' التحقق مما إذا كان الحقل النشط غير فارغ If Not IsNull(activeField) Then ' تحديد البادئة لاسم الحقل fieldNamePrefix = activeField ' إعداد معايير البحث بناءً على الحقل النشط criteria = fieldNamePrefix & " IS NOT NULL" rs.FindFirst criteria If Not rs.NoMatch Then ' تحديث السجل إذا كان موجودًا rs.Edit rs.fields(fieldNamePrefix & "color").Value = Me.Text.ForeColor rs.fields(fieldNamePrefix & "size").Value = Me.Text.FontSize rs.fields(fieldNamePrefix & "font").Value = Me.Text.FontName rs.fields(fieldNamePrefix & "bold").Value = Me.Text.FontBold rs.fields(fieldNamePrefix & "slope").Value = Me.Text.FontItalic rs.fields(fieldNamePrefix & "underline").Value = Me.Text.FontUnderline rs.Update MsgBox "تم تحديث السجل بنجاح.", vbInformation Else ' إضافة سجل جديد إذا لم يكن هناك سجل موجود rs.AddNew rs.fields(fieldNamePrefix & "color").Value = Me.Text.ForeColor rs.fields(fieldNamePrefix & "size").Value = Me.Text.FontSize rs.fields(fieldNamePrefix & "font").Value = Me.Text.FontName rs.fields(fieldNamePrefix & "bold").Value = Me.Text.FontBold rs.fields(fieldNamePrefix & "slope").Value = Me.Text.FontItalic rs.fields(fieldNamePrefix & "underline").Value = Me.Text.FontUnderline rs.Update MsgBox "تم إضافة سجل جديد بنجاح.", vbInformation End If Else MsgBox "الحقل النشط غير محدد.", vbExclamation End If ' إغلاق السجل وتحرير الموارد rs.Close Set rs = Nothing Set db = Nothing Else MsgBox "النموذج غير محمل.", vbExclamation End If Exit Sub ErrorHandler: MsgBox "حدث خطأ أثناء حفظ البيانات: " & Err.Description, vbExclamation If Not rs Is Nothing Then rs.Close Set rs = Nothing End If If Not db Is Nothing Then Set db = Nothing End If End Sub تم تعديل سبتمبر 3 بواسطه ابوخليل تنسيق الكود ... نرجو الاهتمام بتنسيق الكود رابط هذا التعليق شارك More sharing options...
safaa salem5 قام بنشر سبتمبر 2 الكاتب مشاركة قام بنشر سبتمبر 2 ؟؟ رابط هذا التعليق شارك More sharing options...
safaa salem5 قام بنشر سبتمبر 2 الكاتب مشاركة قام بنشر سبتمبر 2 مش متعوده ما الاقيش اجابه لسؤالى فى المنتدى رابط هذا التعليق شارك More sharing options...
ابوخليل قام بنشر سبتمبر 3 مشاركة قام بنشر سبتمبر 3 5 ساعات مضت, safaa salem5 said: مش متعوده ما الاقيش اجابه لسؤالى فى المنتدى تنسيق الكود مهم جدا لتتبع قراءة الكود والبحث عن المشكلة الحل : عطلي هذا السطر rs.FindFirst criteria رابط هذا التعليق شارك More sharing options...
safaa salem5 قام بنشر سبتمبر 3 الكاتب مشاركة قام بنشر سبتمبر 3 (معدل) 10 hours ago, ابوخليل said: تنسيق الكود مهم جدا لتتبع قراءة الكود والبحث عن المشكلة الحل : عطلي هذا السطر rs.FindFirst criteria تمام متشكره جدا لحضرتك هل ممكن اضيف للكود لبعض الحقول انه يتم تخزين قيمة حقل اللون فقط كدا يعنى rs.fields(fieldNamePrefix & "color").Value = Me.Text.ForeColor تم تعديل سبتمبر 3 بواسطه safaa salem5 رابط هذا التعليق شارك More sharing options...
ابوخليل قام بنشر سبتمبر 3 مشاركة قام بنشر سبتمبر 3 لم افهم الطلب بالضبط لأن السطر موجود فعلا ضمن الكود اذا القصد الاكتفاء بلون الخط فقط .. نعم ليه لا .. يتم فقط تعطيل بقية الاسطر الخاصة بالصفات الأخرى رابط هذا التعليق شارك More sharing options...
الردود الموصى بها
من فضلك سجل دخول لتتمكن من التعليق
ستتمكن من اضافه تعليقات بعد التسجيل
سجل دخولك الان