ให้หน้ารายงานแสดงเฉพาะหน้า
กระทู้เก่าบอร์ด อ.Yeadram

 1,793   5
URL.หัวข้อ / URL
ให้หน้ารายงานแสดงเฉพาะหน้า

ผมอยากให้หน้ารายงานมันแสดงเฉพาะที่ติ๊กถูกตรงฟอร์มเท่านั้นนะครับ ผมต้องใช้คำสั่งไหนครับ

ตอนนี้หน้ารายงานผมให้แสดงจากคิวรี่ครับ เงื่อนไขคือให้แสดงเฉพาะที่ติ๊กถูกครับ    และตรงฟอร์มก็ให้แสดงเฉพาะที่ไม่ได้ติ๊ก   

และตอนนี้ปัญหาที่ประสบก็คือ เวลาติ๊กถูกที่หน้าฟอร์มแล้ว เวลาออกรายงานนั้น รายงานมันดันออกของเก่าที่เคยติ๊กถูกไปด้วยอะครับ ผมอยากให้แสดงเฉพาะหน้าที่ติ๊กถูกจากฟอร์มเท่านั้นนะครับ ควรทำอย่างไรดีครับ   ขอบคุณครับ

5 Reply in this Topic. Dispaly 1 pages and you are on page number 1

1 @R03101
เขียนคำสั่งในช่องที่ต้องการให้ Query ค้นหาจะง่ายกว่าครับเช่น หากต้องการตามวันที่ ก็เขียนคำสั่งดังนี้
   >=[Forms]![Report Date Range]![Beginning Trans Date] And
   <=[Forms]![Report Date Range]![Ending Trans Date]

เมื่อทำการเขียนคำสั่งใน Query แล้วอย่าลืมว่าต้องทำฟอร์มสำหรับคีย์ค้นหาใน Query(ในที่นี้หมายถึง Report Date Range ตามต.ย.)

ในส่วนของรายงานให้เขียน Event procedure ดังนี้
1.Private Sub Report_NoData(Cancel As Integer)
   MsgBox "There is no data for this report. Canceling report..."
   Cancel = -1
   End Sub
2.Private Sub Report_Close()
   DoCmd.Close acForm, "Report Date Range"
   End Sub
3.Private Sub Report_Open(Cancel As Integer)
   DoCmd.OpenForm "Report Date Range", , , , ,
   acDialog, "โปรดป้อนวันที่"
    If Not IsLoaded("Report Date Range") Then
        Cancel = True
    End If
End Sub

แค่นี้ก็สามารถพิมพ์รายงานตามช่วงที่ต้องการได้ครับ
2 @R03106
ไม่รู้ว่าฟอร์มพิมพ์เช็คของคุณใช้ข้อมูลจากตารางโดยตรงหรือจาก Query ครับ
ถ้าใช้จาก Query ให้เขียนในเงื่อนไขช่อง "เลขที่เช็ค" เป็น >0 หรือ In not null
รับรองว่าไม่แสดงชัวร์ แต่หากใช้จากตารางโดยตรงให้สร้าง Query ก่อนหรือเขียน SQL ให้มันก่อน ลองทำดูนะครับ
3 @R03111
ลองส่งต.ย.มาให้ทาง mail ekchai_mon@hotmail.com ผมน่าจะช่วยแก้ให้ได้ครับเพราะผมทำฐานข้อมูลอยู่ประจำ บางครั้งอาจจะมีการเรียงลำดับคำสั่งผิด
4 @R03112
docmd.openreport "ชื่อรายงาน", acViewPreview,"Qreptเช็คต่างๆ"

อากิวร์เมนต์ที่ 3 ของคำสั่ง openreport คือการระบุตัวกรอง
ซึ่งในกรณีนี้ ผมมองว่า คิวรี่ตัวนี้แหละคือตัวกรองครับ นำมันไปใช้ได้เลยครับ
5 @R03125
docmd.openreport "ชื่อรายงาน", acViewPreview,, "[pinyes]=-1"
ไม่ใช้ตัวกรองก็ใช้ Where เอาก็ได้ครับ

@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.3365s