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

تعديل فى شكل التقرير

بدأه ramynassif في 11 سبتمبر 2011 · 9 رد · 639 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

ولكن ينقصنى جزء بسيط جداً فى حالة مسح صف من بيانات الجدول وعند فتح التقرير تظهر لى رسالة خطأ وأيضاً فى حالة الإضافة المفترض إضافته كعمود فى التقرير

أرجو كود أو حل لهذه المشكلة

Test00.rar

#2

غير أسماء مربعات التسمية و مربعات النص بحيث تكون مرتبة

مثل

labl01 labl02 .....................................labl17

txt01 txt02 ....................................txt17

ثم ضع هذا الكود فى حدث عند الفتح للتقرير

Dim r As Integer
Dim ctl As Control
r = DCount("*", "1")
For Each ctl In Me.Controls
If Val(Right(ctl.Name, 2)) > r Then ctl.Visible = False
Next ctl

تم تعديل هذه المشاركة بواسطة Abo_Yossof في 13 سبتمبر 2011 في 14:27

مدونتى:-

احترف الأكسس مع أبو يوسف

متغيب حاليا لانشغالى الشديد

#3

أبو يوسف ألف شكر على سرعة ردكم .. بارك الله فيكم

ولكن لو أمكن إرفاق ملف .. مشكور

#4

للرفع

#5

أخى الكريم

عدل التقرير لديك و أرفقه

تم تعديل هذه المشاركة بواسطة Abo_Yossof في 13 سبتمبر 2011 في 11:07

مدونتى:-

احترف الأكسس مع أبو يوسف

متغيب حاليا لانشغالى الشديد

#6
Abo_Yossof كتب:

أخى الكريم

عدل التقرير لديك و أرفقه

يا أخى العزيز أنا قمت بالفعل بتعديل التقرير وأدخلت الكود

لكن على مايبدو أن فى شئ خاطى معى أرجو تعديله

Test00.rar

#7

أخى الكريم

من المفترض أن يكون عدد مربعات النص فى التقرير تساوى أقصى عدد محتمل لديك

لان الكود وظيفته هى اخفاء مربعات النص الزائدة عن عدد سجلات الجدول

المثال تم التعديل عليه

افتح التقرير و لا حظه ثم أغلقه

اضف سجل فى الجدول ثم اغلقه

افتح التقرير مرة ثانية

Test00.rar

مدونتى:-

احترف الأكسس مع أبو يوسف

متغيب حاليا لانشغالى الشديد

#8

أخى أبو يوسف

أنا فعلاً عاجز عن تعب محبتكم يبدو أنه فى جزء منى قصرت فى توصيله بالطريقة الصحيحة

وهو أن بيانات الجدول لا توجد بالتقرير

فهل من كود لتساوى بيانات الجدول ببيانات التقرير أى بيان X 1= Text01 و X2 = Text02 و ...إلخ

فى حين عند حذف صف من الجدول لا يؤثر على فتح التقرير كما أوضحت عزيزى سابقاً

أرجو أن ينال هذا الموضوع اهتمامكم

#9

نعم أخى

استبدل الكود الموجود بالتقرير بهذا الكود

Private Sub Report_Open(Cancel As Integer)
Dim r As Integer, fldno As Integer, fldname As String
Dim ctl As Control
r = DCount("Text01" = "QCross.nam", "1")

For Each ctl In Me.Controls
 fldno = Val(Right(ctl.Name, 2))
 If fldno > r Then
   ctl.Visible = False
 Else
   If ctl.ControlType = acTextBox And ctl.ControlName Like "Text" & "*" Then
     fldname = CurrentDb.QueryDefs(Me.RecordSource).Fields(fldno).Name
     ctl.ControlSource = fldname
   End If
 End If
Next ctl

End Sub

تم تعديل هذه المشاركة بواسطة Abo_Yossof في 13 سبتمبر 2011 في 16:25

1

مدونتى:-

احترف الأكسس مع أبو يوسف

متغيب حاليا لانشغالى الشديد

#10
Abo_Yossof كتب:

نعم أخى

استبدل الكود الموجود بالتقرير بهذا الكود

Private Sub Report_Open(Cancel As Integer)
Dim r As Integer, fldno As Integer, fldname As String
Dim ctl As Control
r = DCount("Text01" = "QCross.nam", "1")

For Each ctl In Me.Controls
 fldno = Val(Right(ctl.Name, 2))
 If fldno > r Then
   ctl.Visible = False
 Else
   If ctl.ControlType = acTextBox And ctl.ControlName Like "Text" & "*" Then
     fldname = CurrentDb.QueryDefs(Me.RecordSource).Fields(fldno).Name
     ctl.ControlSource = fldname
   End If
 End If
Next ctl

End Sub

ألف ألف شكر أستاذنا الكبير أبو يوسف فعلاً هو ده المطلوب

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