hassan omara قام بنشر مايو 6, 2018 قام بنشر مايو 6, 2018 عندي قاعدة بيانات وادخل بها البيانات و وعملت عدة تقارير بناءا علي استعلامات وعندي زر امر للطباعة واريد هذا الزر ان يطبع التقارير التي بها بيانات فقط بمعني عندي 10 تقرير وعند ادخال البيانات يتم ادخال البيانات علي التقرير رقم 3و7 وعند الضغط علي زر امر الطباعة فانه يطبع كل التقارير من 1 الي 10 بس انا عايزه يطبع التقارير اللي فيها بيانات وبس واللي هما 3و7 او عند ادخال البيانات وتفعيل التقارير 1و4و6و9 يتم طباعتهم هما وبس مش كل التقارير ارجوا ان تكون الفكرة وصلت وارجوا الرد وشكرا
hassan omara قام بنشر مايو 6, 2018 الكاتب قام بنشر مايو 6, 2018 (معدل) لقد وجدت هذا الكود ويتم وضعه في حدث عدم وجود بيانات Private Sub Report_NoData(Cancel As Integer) MsgBox "عفواً.. لا توجد بيانات ! سيتم إغلاق التقرير.", _ vbMsgBoxRight + vbMsgBoxRtlReading + vbCritical + vbOKOnly, _ "تنبيه" DoCmd.CancelEvent End Sub وكود اخر وهو On Error Resume Next DoCmd.OpenReport "اسم التقرير", acViewPreview If Err = 2501 Then Err.Clear لالغاء ظهور رسالة التنبيه ولكن للأسف الكود الاول اشتغل تمام بس الكود التاني وهو لالغاء رسالة التنبيه لا يعمل ارجوا الافادة حيث ان زر الطباعة موجود في نموذج مستقل تم تعديل مايو 6, 2018 بواسطه أبو آدم احتواء الكود
أبو آدم قام بنشر مايو 6, 2018 قام بنشر مايو 6, 2018 أخي العزيز ان كنت قد احسنت الفهم عنك ... الكود الاول يوضع في حدث عدم وجود بيانات لكل تقرير على حدا ( يعمل جيدا ) الكود الثاني يوضع في حدث عند النقر لزر أمر الطباعة ، و اذا قرأت الكود تجد انه يتحدث عن فتح تقرير محدد ، فكيف سيعمل على عشرة تقارير ، أو أكثر من تقرير ؟ 1
hassan omara قام بنشر مايو 7, 2018 الكاتب قام بنشر مايو 7, 2018 الحمد لله فلقد توصلت الي الحل وهو اضافة كود في حدث عدم وجود بيانات وهو DoCmd.CancelEvent وفي زر امر الطباعة لا اضيف شي بل سوف احذف Err_Command31_Click: يتم حذف هذا السطر فقط ----> MsgBox Err.Description Resume Exit_Command31_Click فلن تظهر رسالة وبذالك استطيع اضافة طباعة اي كمية تقارير بزر واحد وبالطبع لن يطبع التقارير التي لا يوجد بها بيانات ولن تظهر رسالة خطأ وشكرا 1
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.