اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

الردود الموصى بها

قام بنشر

السلام عليكم
ارجو المساعدة

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


 

db1.rar

  • Like 1
قام بنشر

اهلا اخي محمد

المقصود بهذا الشكل يكون التقرير

 

1.JPG

مع العلم بان هذه التقرير تختلف فيه عدد المواد الدراسية بعض الاقسام تحتوي على 10 مواد في الترم الاول و9 مواد في الترم الثاني وهكذا ، بعض الاقسام تتساوى عدد موادها الدراسية في كل فصل دراسي والبعض الاخر لايتساوى وهذه مشكلة لم استطع ضبطها

 

قام بنشر

اخي الكريم

بداية لا اعدك بانه يمكن تنفيذ المطلوب او لا

لكن ارجو ان ترسل مرفقا يحتوي بيانات اكثر نوعا ما و ان تكون صحيحة

( ان يكون مذكور فيه اسماء المواد و درجاتها بشكل صحيح )

  • 2 weeks later...
قام بنشر
في ٣١‏/١٢‏/٢٠١٦ at 23:05, محمد ايمن said:

اخي الكريم

بداية لا اعدك بانه يمكن تنفيذ المطلوب او لا

لكن ارجو ان ترسل مرفقا يحتوي بيانات اكثر نوعا ما و ان تكون صحيحة

( ان يكون مذكور فيه اسماء المواد و درجاتها بشكل صحيح )

اولا شكرا على اهتمامك

يكفينا محاولاتك

تفضل المرفق

وان شاء الله تجد له حل لانه قد جاب لي الصداع من كثر ما فكرت فيه

 

db5.rar

قام بنشر
في ٣‏/١‏/٢٠١٧ at 09:18, jjafferr said:

السلام عليكم:smile:

 

اليك هذه الروابط

واقرأ الرابط التالي لآخره ، ثم انتقل الى الرابط الذي به

.

جعفر

اخي جعفر مساهماتك دائما قيمه بارك الله فيك

ما تم طرحه كويس عندما تكون الاعمدة الناتجة عن الاستعلام الجدولي قليله كما تفضلت فيما يخص الاشهر

لكن في عندي العمود المتغير هو اسم المقرر الدراسي او المادة وجدول المواد فيه اكثر من 183 ماده في مختلف الاقسام والتخصصات والكليات

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

db5.rar

قام بنشر

السلام عليكم:smile:

 

اللي فهمته هو:

تعمل البحث في النموذج AS_nataeg_tolap ،

ثم تضغط على زر المعاينه ، ونتيجة ، وتريد التقرير يكون فيه كل شئ موجود في النموذج الفرعي (الاستعلام NF_nataeg_tolap ) ،

صح ؟

 

جعفر

  • Like 1
قام بنشر
في ١٩‏/١‏/٢٠١٧ at 13:13, jjafferr said:

السلام عليكم:smile:

 

اللي فهمته هو:

تعمل البحث في النموذج AS_nataeg_tolap ،

ثم تضغط على زر المعاينه ، ونتيجة ، وتريد التقرير يكون فيه كل شئ موجود في النموذج الفرعي (الاستعلام NF_nataeg_tolap ) ،

صح ؟

 

جعفر

اهلا اخي جعفر

نعم بالضبط هذا هو المطلوب

انا عملت معالجة مؤقته لكنها غير مضمونه

ارجو ان تنظر للصور المرفقه ولاحظ الفرق في الصورتين

 

1.JPG

2.JPG

قام بنشر

ماقصدته انا المعالجة المؤقته انه لو زادت عدد المواد عن 12 مادة لن تظهر باقي المواد ما يظهر 12 مادة فقط وكذلك لو كان يوجد اربع فصول دراسية كذلك لن تظهر تسمية الفصل الرابع

وما قمت به هو تصميم التقرير ليتناسب مع المقررات الدراسية لبعض الاقسام فقط وليس جميع الاقسام

قام بنشر

اعطني مثالين من برنامجك (يعني اخبرني اين اذهب ، وماذا اختار ، ثم ماذا اعمل ، ... ) ،

والمثال الاول فيه اكبر كمية مقررات دراسية ، ولأكبر الفصول (واذا ما موجود في مرفقك ، لوسمحت تدخل البيانات له) ،

ومثال للأقل:smile:

 

هنا الاستاذ شفان اعطى طريقة للتخلص من الحقول الغير مرغوب فيها:

 

جعفر

  • Like 1
قام بنشر
منذ ساعه, jjafferr said:

اعطني مثالين من برنامجك (يعني اخبرني اين اذهب ، وماذا اختار ، ثم ماذا اعمل ، ... ) ،

والمثال الاول فيه اكبر كمية مقررات دراسية ، ولأكبر الفصول (واذا ما موجود في مرفقك ، لوسمحت تدخل البيانات له) ،

ومثال للأقل:smile:

 

هنا الاستاذ شفان اعطى طريقة للتخلص من الحقول الغير مرغوب فيها:

 

جعفر

المعالجة التي طرحها الاخ شفان لاتتناسب مع تقريري

بالنسبة للامثلة كالتالي:

1- اختر عام الالتحاق  2017/2016 ، ثم البرنامج : ماجسيتر ، ثم الكلية: العلوم، ثم القسم : الكيمياء، ثم التخصص ، كيمياء عضوية، ثم كشوفات نتائج الطلاب ثم معاينة

المثل السابق لاحد الاقسام التي فيها عدد20 مقرر دراسي وهو اكبر الاقسام من حيث عدد المواد ويحتوي على اربع فصول دراسية ، كل عام دراسي فيه فصلين دراسيين

ملاحظة على المثل الاول: عدد المقررات التي ستظهر في التقرير 12 مادة فقط كون التقرير صمم لعدد 12 فقط

2- اختر عام الالتحاق  2017/2016 ، ثم البرنامج : ماجسيتر ، ثم الكلية: العلوم الادارية، ثم القسم : المحاسبة، ثم التخصص ، محاسبة، ثم كشوفات نتائج الطلاب ثم معاينة

هذا القسم فيه ثلاث فصول دراسية وعدد 10 مواد

مرفق لك القاعدة بعد اجراء اخر التعديلات عليها

مع العلم بان البرنامج على وشك الانتهاء ولم يتبقى لدي سوء هذا التقرير لم يضبط معي وانا ملزم بوقت معين لتسليم البرنامج
ارجوا التعاون معي وجزاك الله خير الجزاء

3- اختر عام الالتحاق  2017/2016 ، ثم البرنامج : ماجسيتر ، ثم الكلية: العلوم، ثم القسم : الكيمياء، ثم التخصص ، كيمياء عضوية، ثم كشوفات نتائج الطلاب ثم معاينة

 

 

db5.rar

قام بنشر
11 ساعات مضت, jjafferr said:

هل سيكون التقرير لفصل دراسي واحد فقط؟ او تريد جميع الفصول الدراسية في تقرير واحد؟

 

جعفر

 

جميع الفصول اخي جعفر

طباع هذا يعتمد على رغبة المستخدم قد يحتاج الى اخراج تقرير فصل واحد او فصلين او حتى اربعه هذا حسب الاحتياج

طبعا عدد الفصول الدراسية لاتجازو اربعة فصول دراسية

بارك الله فيك اخي العزيز على اهتمامك ومتابعتك المستمرة

جزيت خيرا

 

  • Like 1
قام بنشر

السلام عليكم:smile:

 

وبعد جهد جهيد توصلت الى هذا التقرير ،

رجاء اعمل نسخة ، واعمل تجاربك على النسخة:smile:

 

التقرير يحتوي على 20 مادة ، لذلك اضطررت ان العب في حجم الحقول قليلا ،

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

533.Clipboard01.jpg

.

533.Clipboard02.jpg

.

533.Clipboard03.jpg

.

 

لا تزيد ولا تنقص في عرض واماكن الحقول ، ولا شعرة ، وإلا لن تلصق الحقول ببعضها كما يجب.

 

طريقة العمل:

1. نخفي الحقول التي رقمها اكبر من عدد المواد ،

2. نأخذ المسافة بين الاسم والمجموع العام ، ثم نقسمه على عدد المواد ، وعليه نعطي كل حقل نصيبه من القسمة:smile:

 

الكود:

في النموذج ، حسبنا عدد المواد الموجودة ، وذلك على حدث بعد التحديث لمربعات التحرير (المربع باللون البرتقالي في النموذج ، ويمكنك اخفاءه):


Function How_Many_Records()
On Error GoTo err_How_Many_Records
    
    mySQL = mySQL & "[NAM_PARNAMG]=" & Me.NAM_PARNAMG
    mySQL = mySQL & " AND [taksos]=" & Me.taksos
    mySQL = mySQL & " AND [department]=" & Me.departmentT
    mySQL = mySQL & " AND [asm_college]=" & Me.asm_collegeT
    'Debug.Print mySQL
    
    Me.How_Many = DCount("*", "Mokarar_drasi", mySQL)
    
Exit Function
err_How_Many_Records:

    If Err.Number = 3075 Then
        Me.How_Many = 0
        Resume Next
    Else
        MsgBox Err.Number & vbCrLf & Err.Description
    End If
    
End Function

.

ثم في التقرير ، وعلى قسم التفصيل ، ورأس مجموعة التخصص:

Option Compare Database
Private Factor As Single

Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
On Error Resume Next

    Limit = Forms!AS_nataeg_tolap!How_Many
    
    If Limit = 20 Then Exit Sub
    
    Visited_Detail = Visited_Detail + 1
    
'make the other fields, in-visible
    Dim ctl As Control
    For Each ctl In Report.Controls
        If ctl.ControlType = acTextBox Then
        
            Type1 = Replace(ctl.Name, "N", "")
            Type2 = Replace(Type1, "tt_", "")
            
            If Val(Type1) > Limit Or Val(Type2) > Limit Then
                ctl.Visible = False

            Else
                ctl.Visible = True
                
            End If  'IsNull
            
        End If  'ControlType
    Next ctl
    

    Me.Ctl1N.Left = Me.Ctl1.Left: Me.Ctl1N.Width = Me.Ctl1.Width
    Me.Ctl2N.Left = Me.Ctl2.Left: Me.Ctl2N.Width = Me.Ctl2.Width
    Me.Ctl3N.Left = Me.Ctl3.Left: Me.Ctl3N.Width = Me.Ctl3.Width
    Me.Ctl4N.Left = Me.Ctl4.Left: Me.Ctl4N.Width = Me.Ctl4.Width
    Me.Ctl5N.Left = Me.Ctl5.Left: Me.Ctl5N.Width = Me.Ctl5.Width
    Me.Ctl6N.Left = Me.Ctl6.Left: Me.Ctl6N.Width = Me.Ctl6.Width
    Me.Ctl7N.Left = Me.Ctl7.Left: Me.Ctl7N.Width = Me.Ctl7.Width
    Me.Ctl8N.Left = Me.Ctl8.Left: Me.Ctl8N.Width = Me.Ctl8.Width
    Me.Ctl9N.Left = Me.Ctl9.Left: Me.Ctl9N.Width = Me.Ctl9.Width
    Me.Ctl10N.Left = Me.Ctl10.Left: Me.Ctl10N.Width = Me.Ctl10.Width
    Me.Ctl11N.Left = Me.Ctl11.Left: Me.Ctl11N.Width = Me.Ctl11.Width
    Me.Ctl12N.Left = Me.Ctl12.Left: Me.Ctl12N.Width = Me.Ctl12.Width
    Me.Ctl13N.Left = Me.Ctl13.Left: Me.Ctl13N.Width = Me.Ctl13.Width
    Me.Ctl14N.Left = Me.Ctl14.Left: Me.Ctl14N.Width = Me.Ctl14.Width
    Me.Ctl15N.Left = Me.Ctl15.Left: Me.Ctl15N.Width = Me.Ctl15.Width
    Me.Ctl16N.Left = Me.Ctl16.Left: Me.Ctl16N.Width = Me.Ctl16.Width
    Me.Ctl17N.Left = Me.Ctl17.Left: Me.Ctl17N.Width = Me.Ctl17.Width
    Me.Ctl18N.Left = Me.Ctl18.Left: Me.Ctl18N.Width = Me.Ctl18.Width
    Me.Ctl19N.Left = Me.Ctl19.Left: Me.Ctl19N.Width = Me.Ctl19.Width
    Me.Ctl20N.Left = Me.Ctl20.Left: Me.Ctl20N.Width = Me.Ctl20.Width
    
    Me.tt_1n.Left = Me.Ctl1.Left: Me.tt_1n.Width = Me.Ctl1.Width
    Me.tt_2n.Left = Me.Ctl2.Left: Me.tt_2n.Width = Me.Ctl2.Width
    Me.tt_3n.Left = Me.Ctl3.Left: Me.tt_3n.Width = Me.Ctl3.Width
    Me.tt_4n.Left = Me.Ctl4.Left: Me.tt_4n.Width = Me.Ctl4.Width
    Me.tt_5n.Left = Me.Ctl5.Left: Me.tt_5n.Width = Me.Ctl5.Width
    Me.tt_6n.Left = Me.Ctl6.Left: Me.tt_6n.Width = Me.Ctl6.Width
    Me.tt_7n.Left = Me.Ctl7.Left: Me.tt_7n.Width = Me.Ctl7.Width
    Me.tt_8n.Left = Me.Ctl8.Left: Me.tt_8n.Width = Me.Ctl8.Width
    Me.tt_9n.Left = Me.Ctl9.Left: Me.tt_9n.Width = Me.Ctl9.Width
    Me.tt_10n.Left = Me.Ctl10.Left: Me.tt_10n.Width = Me.Ctl10.Width
    Me.tt_11n.Left = Me.Ctl11.Left: Me.tt_11n.Width = Me.Ctl11.Width
    Me.tt_12n.Left = Me.Ctl12.Left: Me.tt_12n.Width = Me.Ctl12.Width
    Me.tt_13n.Left = Me.Ctl13.Left: Me.tt_13n.Width = Me.Ctl13.Width
    Me.tt_14n.Left = Me.Ctl14.Left: Me.tt_14n.Width = Me.Ctl14.Width
    Me.tt_15n.Left = Me.Ctl15.Left: Me.tt_15n.Width = Me.Ctl15.Width
    Me.tt_16n.Left = Me.Ctl16.Left: Me.tt_16n.Width = Me.Ctl16.Width
    Me.tt_17n.Left = Me.Ctl17.Left: Me.tt_17n.Width = Me.Ctl17.Width
    Me.tt_18n.Left = Me.Ctl18.Left: Me.tt_18n.Width = Me.Ctl18.Width
    Me.tt_19n.Left = Me.Ctl19.Left: Me.tt_19n.Width = Me.Ctl19.Width
    Me.tt_20n.Left = Me.Ctl20.Left: Me.tt_20n.Width = Me.Ctl20.Width
    
    
End Sub

Private Sub taksos_Header_Format(Cancel As Integer, FormatCount As Integer)
On Error Resume Next

    Limit = Forms!AS_nataeg_tolap!How_Many
    Starting_Point = Me.lbl_Total.Left + Me.lbl_Total.Width
    Me.fasl_derasi = "الفصل الدراسي " & Forms!AS_nataeg_tolap!fasl_derasi.Column(1)
    
    If Limit = 20 Then Exit Sub
    
'make the other fields, in-visible
    Dim ctl As Control
    For Each ctl In Report.Controls
        If ctl.ControlType = acComboBox Then
        
            If Val(ctl.Name) > Limit Then
                ctl.Visible = False
            Else
                
                ctl.Visible = True
            End If  'IsNull
            
            If Val(ctl.Name) = Limit Then Factor = (ctl.Left - Starting_Point) / Limit
            
        End If  'ControlType
    Next ctl
              
    'Debug.Print "Header"
'move and stretch fields
    For i = Limit To 1 Step -1
        For Each ctl In Report.Controls
            
            If ctl.ControlType = acComboBox And Val(ctl.Name) = i Then
                
                ctl.Left = Starting_Point
                ctl.Width = ctl.Width + Factor
                Starting_Point = ctl.Left + ctl.Width
                Exit For
                'Debug.Print ctl.Name & vbTab & ctl.Left & vbTab & ctl.Width
                
            End If  'ControlType
        Next ctl
    Next i
    
End Sub

.

جعفر

533.1.db5.mdb.zip

  • Like 2
قام بنشر (معدل)
10 ساعات مضت, jjafferr said:

السلام عليكم:smile:

 

وبعد جهد جهيد توصلت الى هذا التقرير ،

رجاء اعمل نسخة ، واعمل تجاربك على النسخة:smile:

 

التقرير يحتوي على 20 مادة ، لذلك اضطررت ان العب في حجم الحقول قليلا ،

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

533.Clipboard01.jpg

.

533.Clipboard02.jpg

.

533.Clipboard03.jpg

.

 

لا تزيد ولا تنقص في عرض واماكن الحقول ، ولا شعرة ، وإلا لن تلصق الحقول ببعضها كما يجب.

 

طريقة العمل:

1. نخفي الحقول التي رقمها اكبر من عدد المواد ،

2. نأخذ المسافة بين الاسم والمجموع العام ، ثم نقسمه على عدد المواد ، وعليه نعطي كل حقل نصيبه من القسمة:smile:

 

الكود:

في النموذج ، حسبنا عدد المواد الموجودة ، وذلك على حدث بعد التحديث لمربعات التحرير (المربع باللون البرتقالي في النموذج ، ويمكنك اخفاءه):



Function How_Many_Records()
On Error GoTo err_How_Many_Records
    
    mySQL = mySQL & "[NAM_PARNAMG]=" & Me.NAM_PARNAMG
    mySQL = mySQL & " AND [taksos]=" & Me.taksos
    mySQL = mySQL & " AND [department]=" & Me.departmentT
    mySQL = mySQL & " AND [asm_college]=" & Me.asm_collegeT
    'Debug.Print mySQL
    
    Me.How_Many = DCount("*", "Mokarar_drasi", mySQL)
    
Exit Function
err_How_Many_Records:

    If Err.Number = 3075 Then
        Me.How_Many = 0
        Resume Next
    Else
        MsgBox Err.Number & vbCrLf & Err.Description
    End If
    
End Function

.

ثم في التقرير ، وعلى قسم التفصيل ، ورأس مجموعة التخصص:


Option Compare Database
Private Factor As Single

Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
On Error Resume Next

    Limit = Forms!AS_nataeg_tolap!How_Many
    
    If Limit = 20 Then Exit Sub
    
    Visited_Detail = Visited_Detail + 1
    
'make the other fields, in-visible
    Dim ctl As Control
    For Each ctl In Report.Controls
        If ctl.ControlType = acTextBox Then
        
            Type1 = Replace(ctl.Name, "N", "")
            Type2 = Replace(Type1, "tt_", "")
            
            If Val(Type1) > Limit Or Val(Type2) > Limit Then
                ctl.Visible = False

            Else
                ctl.Visible = True
                
            End If  'IsNull
            
        End If  'ControlType
    Next ctl
    

    Me.Ctl1N.Left = Me.Ctl1.Left: Me.Ctl1N.Width = Me.Ctl1.Width
    Me.Ctl2N.Left = Me.Ctl2.Left: Me.Ctl2N.Width = Me.Ctl2.Width
    Me.Ctl3N.Left = Me.Ctl3.Left: Me.Ctl3N.Width = Me.Ctl3.Width
    Me.Ctl4N.Left = Me.Ctl4.Left: Me.Ctl4N.Width = Me.Ctl4.Width
    Me.Ctl5N.Left = Me.Ctl5.Left: Me.Ctl5N.Width = Me.Ctl5.Width
    Me.Ctl6N.Left = Me.Ctl6.Left: Me.Ctl6N.Width = Me.Ctl6.Width
    Me.Ctl7N.Left = Me.Ctl7.Left: Me.Ctl7N.Width = Me.Ctl7.Width
    Me.Ctl8N.Left = Me.Ctl8.Left: Me.Ctl8N.Width = Me.Ctl8.Width
    Me.Ctl9N.Left = Me.Ctl9.Left: Me.Ctl9N.Width = Me.Ctl9.Width
    Me.Ctl10N.Left = Me.Ctl10.Left: Me.Ctl10N.Width = Me.Ctl10.Width
    Me.Ctl11N.Left = Me.Ctl11.Left: Me.Ctl11N.Width = Me.Ctl11.Width
    Me.Ctl12N.Left = Me.Ctl12.Left: Me.Ctl12N.Width = Me.Ctl12.Width
    Me.Ctl13N.Left = Me.Ctl13.Left: Me.Ctl13N.Width = Me.Ctl13.Width
    Me.Ctl14N.Left = Me.Ctl14.Left: Me.Ctl14N.Width = Me.Ctl14.Width
    Me.Ctl15N.Left = Me.Ctl15.Left: Me.Ctl15N.Width = Me.Ctl15.Width
    Me.Ctl16N.Left = Me.Ctl16.Left: Me.Ctl16N.Width = Me.Ctl16.Width
    Me.Ctl17N.Left = Me.Ctl17.Left: Me.Ctl17N.Width = Me.Ctl17.Width
    Me.Ctl18N.Left = Me.Ctl18.Left: Me.Ctl18N.Width = Me.Ctl18.Width
    Me.Ctl19N.Left = Me.Ctl19.Left: Me.Ctl19N.Width = Me.Ctl19.Width
    Me.Ctl20N.Left = Me.Ctl20.Left: Me.Ctl20N.Width = Me.Ctl20.Width
    
    Me.tt_1n.Left = Me.Ctl1.Left: Me.tt_1n.Width = Me.Ctl1.Width
    Me.tt_2n.Left = Me.Ctl2.Left: Me.tt_2n.Width = Me.Ctl2.Width
    Me.tt_3n.Left = Me.Ctl3.Left: Me.tt_3n.Width = Me.Ctl3.Width
    Me.tt_4n.Left = Me.Ctl4.Left: Me.tt_4n.Width = Me.Ctl4.Width
    Me.tt_5n.Left = Me.Ctl5.Left: Me.tt_5n.Width = Me.Ctl5.Width
    Me.tt_6n.Left = Me.Ctl6.Left: Me.tt_6n.Width = Me.Ctl6.Width
    Me.tt_7n.Left = Me.Ctl7.Left: Me.tt_7n.Width = Me.Ctl7.Width
    Me.tt_8n.Left = Me.Ctl8.Left: Me.tt_8n.Width = Me.Ctl8.Width
    Me.tt_9n.Left = Me.Ctl9.Left: Me.tt_9n.Width = Me.Ctl9.Width
    Me.tt_10n.Left = Me.Ctl10.Left: Me.tt_10n.Width = Me.Ctl10.Width
    Me.tt_11n.Left = Me.Ctl11.Left: Me.tt_11n.Width = Me.Ctl11.Width
    Me.tt_12n.Left = Me.Ctl12.Left: Me.tt_12n.Width = Me.Ctl12.Width
    Me.tt_13n.Left = Me.Ctl13.Left: Me.tt_13n.Width = Me.Ctl13.Width
    Me.tt_14n.Left = Me.Ctl14.Left: Me.tt_14n.Width = Me.Ctl14.Width
    Me.tt_15n.Left = Me.Ctl15.Left: Me.tt_15n.Width = Me.Ctl15.Width
    Me.tt_16n.Left = Me.Ctl16.Left: Me.tt_16n.Width = Me.Ctl16.Width
    Me.tt_17n.Left = Me.Ctl17.Left: Me.tt_17n.Width = Me.Ctl17.Width
    Me.tt_18n.Left = Me.Ctl18.Left: Me.tt_18n.Width = Me.Ctl18.Width
    Me.tt_19n.Left = Me.Ctl19.Left: Me.tt_19n.Width = Me.Ctl19.Width
    Me.tt_20n.Left = Me.Ctl20.Left: Me.tt_20n.Width = Me.Ctl20.Width
    
    
End Sub

Private Sub taksos_Header_Format(Cancel As Integer, FormatCount As Integer)
On Error Resume Next

    Limit = Forms!AS_nataeg_tolap!How_Many
    Starting_Point = Me.lbl_Total.Left + Me.lbl_Total.Width
    Me.fasl_derasi = "الفصل الدراسي " & Forms!AS_nataeg_tolap!fasl_derasi.Column(1)
    
    If Limit = 20 Then Exit Sub
    
'make the other fields, in-visible
    Dim ctl As Control
    For Each ctl In Report.Controls
        If ctl.ControlType = acComboBox Then
        
            If Val(ctl.Name) > Limit Then
                ctl.Visible = False
            Else
                
                ctl.Visible = True
            End If  'IsNull
            
            If Val(ctl.Name) = Limit Then Factor = (ctl.Left - Starting_Point) / Limit
            
        End If  'ControlType
    Next ctl
              
    'Debug.Print "Header"
'move and stretch fields
    For i = Limit To 1 Step -1
        For Each ctl In Report.Controls
            
            If ctl.ControlType = acComboBox And Val(ctl.Name) = i Then
                
                ctl.Left = Starting_Point
                ctl.Width = ctl.Width + Factor
                Starting_Point = ctl.Left + ctl.Width
                Exit For
                'Debug.Print ctl.Name & vbTab & ctl.Left & vbTab & ctl.Width
                
            End If  'ControlType
        Next ctl
    Next i
    
End Sub

.

جعفر

533.1.db5.mdb.zip

اخي جعفر

اولا : جزاك الله خير على جهودك الجبارة

ثانيا: قبلة على جبينك

ثالثا: انت معلم

رووووووووووووووووووووووووووووووعة :wallbash:                       :signthankspin:

توجد ملاحظة بسيطة : اسماء الفصول الدراسية لا تظهر مايظهر هو كلمة الفصل الدراسي فقط وغير محدد اسم الفصل الدراسية مثلا في الصورة المرفقةتوجد 20 مادة لعدد اربع فصول دراسية (الفصل الاول ، الثاني ، الثالث، الرابع) ، والمفروض انه يطلع كل مسمى الفصل الدراسي تحته المواد التي تتبعه

ولعلك شاهدت الكود الذي كتبته والخاص باظهار واخفاء مربعات التسمية الخاص باسماء الفصول الدراسية

لكنه كود غير عملي وطريقه تقليدية هل هناك كود يغالج لي هذه المشكلة

مرفق صورتين الصورة الاول الخاص بالتقرير من البرنامج

والصورة الثانية بعد معالجتها بالورد كتوضيح لما هو مطلوب

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

وانا تحت امرك في اي وقت اذا احتجت اي شيئ

خالص مودتي

 

1.JPG

2.JPG

تم تعديل بواسطه jjafferr
تم اخفاء البيانات الخاصة
قام بنشر
7 دقائق مضت, jjafferr said:

حياك الله أخي سامي:smile:

 

واذا طريقتك تؤدي بالغرض ، فنور على نور:smile:

 

جعفر

للاسف لاتؤدي المطلوب بشكل مضمون

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

قام بنشر
منذ ساعه, jjafferr said:

حاول فيها بالكود ، لأن زبائني ورائي وانا متأخر في العمل:blink:

 

جعفر

حاولت انفذ الكود لكنه لم ينفع لماذا ؟ لان طريق الكود لاتتناسب مع ديناميكيت التقرير الحالي بعد ان عدلته انت ، الكود يعمل في ظل التقرير السابق الذي لم اعد بحاجة له

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

 

قام بنشر
1 دقيقه مضت, jjafferr said:

 

قصدي التقرير السابق قبل ما تعدله انت

الكود لاينفع مع التقرير الجديد الذي عدلته انت

الفكرة التي في راسي هي كالتالي

قياس اجمالي حجم اعمدة المواد في كل فصل وعلى اساس هذه القيمة يتغير حجم مربع تسميه الفصل الدراسي

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information