الطلب يا اعزائي هو عند الضغط على امر طباعة تظهر رسالة تقول هل تريد الطباعة ام لا اذا ضغط على نعم يطبع واذا ضغط عل لا لا يطبع مع خالص تحياتي
عمل رسالة عند الضغط على امر طباعة
استخدم الكود التالي عند فتح التقرير
SendKeys ("^{p}")superhot3000 كتب:استخدم الكود التالي عند فتح التقرير
SendKeys ("^{p}")
جزالك الخير عزيزي ولكن اريد اكتب الرسالة التي الريدها مثل اذا كنت تريد الطباعة اضغط نعم مثلا
ممكن تستعمل نفس الأمر بالطريقة المطلوبة على الشكل التالي:
SendKeys ("^{p}")
End If
If MsgBox("Print ?", vbYesNo + vbQuestion, "Check") = vbYes Thensuperhot3000 كتب:ممكن تستعمل نفس الأمر بالطريقة المطلوبة على الشكل التالي:
SendKeys ("^{p}")
End IfIf MsgBox("Print ?", vbYesNo + vbQuestion, "Check") = vbYes Then
ممكن عزيزي تطبق لي المثال لاني عملتة ولم تعمل تعطي رسالة خطا
fas2010 كتب:ممكن عزيزي تطبق لي المثال لاني عملتة ولم تعمل تعطي رسالة خطا
الكود يجب أن يكون في حدث الفتح (فتح التقرير) أي عندما يشتغل التقرير ينفذ الأمر التالي وتضع الأمر ، وسيكون كاملا على النحو التالي:
Private Sub Report_Open(Cancel As Integer)
If MsgBox("Print ?", vbYesNo + vbQuestion, "Check") = vbYes Then
SendKeys ("^{p}")
End If
End Sub
واذا لم تعمل معك ارفعها هنا.![]()
superhot3000 كتب:الكود يجب أن يكون في حدث الفتح (فتح التقرير) أي عندما يشتغل التقرير ينفذ الأمر التالي وتضع الأمر ، وسيكون كاملا على النحو التالي:
Private Sub Report_Open(Cancel As Integer)
If MsgBox("Print ?", vbYesNo + vbQuestion, "Check") = vbYes Then
SendKeys ("^{p}")
End If
End Subواذا لم تعمل معك ارفعها هنا.
اشكرك عزيزي على صبرك علي عزيزي انا فعلت مثل ما خبرتني وظهرت الرسالة الحمد الله لكن المشكلة اذا ضغط على لا يطبع ايضا هذة هي المشكلة الان يعني ضغط على لا او نعم يطبع مع خالص تحياتي
الكود في ازرار الطباعة يفتح التقرير ويطبعه مباشرة وهو:
DoCmd.OpenReport stDocName, acNormal
والمفترض أن تغير كلمة acNormal إلى acPreview وتصبح كالتالي:
DoCmd.OpenReport stDocName, acPreview
وهذا الملف بعد التعديل عليه واتمنى أن يؤدي الغرض.![]()
لو تسمح لي اخي super والاخ السائل...
رجاء لو توضح مطلبك... هل تريد الطباعة الى الطابعة ام المعاينة فقط.؟؟؟
يعني..
اذا اردت الرسالة ان تحدد نوع عرض التقرير هل هو طباعة مباشرة ام عرض على الشاشة فقط
فقد حلها الاخ super بشكل كامل
اما اذا كنت تريد تخيير المستخدم بين فتح التقرير من عدمه فهذا شئ اخر..
تحياتي
وَمِنَ النَّاسِ مَن يُعْجِبُكَ قَوْلُهُ فِي الْحَيَاةِ الدُّنْيَا وَيُشْهِدُ الله عَلَى مَا فِي قَلْبِهِ وَهُوَ أَلَدُّ الْخِصَامِ
تحية للجميع
واسمحوا لي بالمداخلة
اعتقد ان السائل يخشى من ضغط الزر من غير قصد فلهذا يريد الرسالة
فهذا كود اخونا السوبر نقلته الى الفورم
Private Sub أمر9_Click()
On Error GoTo Err_أمر9_Click
If MsgBox("تبي تطبع ؟", vbYesNo + vbQuestion, "Check") = vbNo Then
Exit Sub
Else
Dim stDocName As String
stDocName = "zzz"
DoCmd.OpenReport stDocName, acViewNormal
End If
Exit_أمر9_Click:
Exit Sub
Err_أمر9_Click:
MsgBox Err.Description
Resume Exit_أمر9_Click
End Subوهذا المثال بعد التعديل
وهذا ايضا احتمال وارد...
بارك الله فيك اخي ابو الأنس
وَمِنَ النَّاسِ مَن يُعْجِبُكَ قَوْلُهُ فِي الْحَيَاةِ الدُّنْيَا وَيُشْهِدُ الله عَلَى مَا فِي قَلْبِهِ وَهُوَ أَلَدُّ الْخِصَامِ
أبو الأنس كتب:تحية للجميع
واسمحوا لي بالمداخلة
اعتقد ان السائل يخشى من ضغط الزر من غير قصد فلهذا يريد الرسالة
فهذا كود اخونا السوبر نقلته الى الفورم Private Sub أمر9_Click() On Error GoTo Err_أمر9_Click If MsgBox("تبي تطبع ؟", vbYesNo + vbQuestion, "Check") = vbNo Then Exit Sub Else Dim stDocName As String stDocName = "zzz" DoCmd.OpenReport stDocName, acViewNormal End If Exit_أمر9_Click: Exit Sub Err_أمر9_Click: MsgBox Err.Description Resume Exit_أمر9_Click End Subوهذا المثال بعد التعديل
نعم عزيزي هذا طلبي لكم الشكر جميعا وجعلة في ميزان اعمالكم
الحمد لله على انقضاء الحاجات
شكرا للمستشار سوبر
والشكر موصول لاستاذنا همام وجزاه الله خيرا على هذه المتابعة