اذهب الي المحتوي
أوفيسنا

تثبيت مسلسل التقرير من 1 الى 20 فى كل الصفحات


إذهب إلى أفضل إجابة Solved by jjafferr,

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

السلام عليكم ورحمه الله 

الرجاء ضبط هذا الملف .... لى طلبين فقط ارجو المساعده فيهم

1 -  فى التقرير المرفق فى الملف محتاج المسلسل يكون من 1 الى 20 فى جميع الصفحات لا يتغير

2-  محتاج نموذج يساعدنى فى طباعه صفحه واحده فى التقرير ... اختار منه رقم الصفحه الاقيها وحدها فى التقرير جاهزه للطباعه او للتصدير 

    ولها رقم صفحه ( وطبعا هذه الصحه مكونه من 20 اسم ومسلسلهم ثابت من 1 الى 20 )

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

Database6.mdb

 

رابط هذا التعليق
شارك

ممكن طريقه لعمل كل 20 اسم برقم مسلسل واحد فى الاستعلام

بعنى  من 1 الى 20 بمسلسل 1

ومن 21 الى 40  بمسلسل 2  وهكذا

اعتقد بكده ممكن نوصل للحل

لكن لقله خبرتى بالاكسس لم استطيع عملها

جزاكم الله خيرا

رابط هذا التعليق
شارك

13 ساعات مضت, احمد حبيبه said:

المسلسل يكون من 1 الى 20 فى جميع الصفحات لا يتغير

تفضل 🙂

 

لا تضع قيمة للحقل Counter في التقرير ، وسنعطيه القيمة من الكود:

Private Sub تفصيل_Format(Cancel As Integer, FormatCount As Integer)
    
    Me.Counter = Nz(Me.Counter, 0) + 1
    If Me.Counter = 21 Then
        Me.Counter = 0
    End If

End Sub

 

 

13 ساعات مضت, احمد حبيبه said:

ولها رقم صفحه

هذا ليس بمعيار !!

 

جعفر

 

 

جعفر

 

 

1332.Report_Counter_20_ONLY.mdb.zip

  • Like 3
رابط هذا التعليق
شارك

1 ساعه مضت, jjafferr said:

 


Private Sub تفصيل_Format(Cancel As Integer, FormatCount As Integer)
    
    Me.Counter = Nz(Me.Counter, 0) + 1
    If Me.Counter = 21 Then
        Me.Counter = 0
    End If

End Sub

جزاك الله خيرا

كود رائع ... ادى المطلوب .. اشكرك جدا جدا 

لى طلب واحد .... مهم جدا بالنسبه لى فى عملى

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

بعنى  من 1 الى 20 بمسلسل 1

ومن 21 الى 40  بمسلسل 2  وهكذا

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

وانا بعملها يدويا كل شهر لالاف الموظفين

 

 

 

 

 

رابط هذا التعليق
شارك

3 ساعات مضت, احمد حبيبه said:

بعنى  من 1 الى 20 بمسلسل 1

ومن 21 الى 40  بمسلسل 2  وهكذا

اضفت الحقلين OT_Groups للمجموعة ، و OT_Seq للتسلسل ، الى الجدول ،

التسلسل 1-20 ويتكرر لكل مجموعة

ثم استخدمت الكود التالي لهذه الارقام:


    Dim rst As DAO.Recordset
    Dim S As Integer
    Dim G As Integer
    Dim i As Integer
    
    Set rst = CurrentDb.OpenRecordset("Select * From all_data")
    
    S = 0
    G = 1
    
    'loop through the table
    Do Until rst.EOF
    
        S = S + 1
         
        rst.Edit
            rst!OT_Seq = S
            rst!OT_Groups = G
        rst.Update
        
        If S = 20 Then
            S = 0
            G = G + 1
        End If
        
        rst.MoveNext
    Loop
    
    rst.Close: Set rst = Nothing
    
    MsgBox "Done"
    

 

جعفر

1332.Report_Counter_20_ONLY.mdb.zip

  • Like 3
رابط هذا التعليق
شارك

  • أفضل إجابة

وبعد قراءتي لطلبك بتمعن اكثر ، انت لا تريد 20 20 ، وانما تسلسل واحد ، ولكن مجموعات 🙂

 

هذا الكود يقوم بالعمل:

    Dim rst As DAO.Recordset
    Dim S As Integer
    Dim G As Integer
    Dim i As Integer
    
    Set rst = CurrentDb.OpenRecordset("Select * From all_data")
    
    S = 0
    G = 1
    
    'loop through the table
    Do Until rst.EOF
    
        S = S + 1
         
        rst.Edit
            rst!OT_Seq = S
            rst!OT_Groups = G
        rst.Update
        
        
        'If S = 20 Then 'Repeating 1-20
            'S = 0
        If Int(S / 20) = S / 20 Then    'No Repeat
            G = G + 1
        End If
        
        rst.MoveNext
    Loop
    
    rst.Close: Set rst = Nothing
    
    MsgBox "Done"
    

 

جعفر

1332.Report_Counter_20_ONLY.mdb.zip

  • Like 2
رابط هذا التعليق
شارك

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



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

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

Important Information