กระทู้เก่าบอร์ด อ.Yeadram
1,793 5
URL.หัวข้อ /
URL
ให้หน้ารายงานแสดงเฉพาะหน้า
ผมอยากให้หน้ารายงานมันแสดงเฉพาะที่ติ๊กถูกตรงฟอร์มเท่านั้นนะครับ ผมต้องใช้คำสั่งไหนครับ
ตอนนี้หน้ารายงานผมให้แสดงจากคิวรี่ครับ เงื่อนไขคือให้แสดงเฉพาะที่ติ๊กถูกครับ และตรงฟอร์มก็ให้แสดงเฉพาะที่ไม่ได้ติ๊ก
และตอนนี้ปัญหาที่ประสบก็คือ เวลาติ๊กถูกที่หน้าฟอร์มแล้ว เวลาออกรายงานนั้น รายงานมันดันออกของเก่าที่เคยติ๊กถูกไปด้วยอะครับ ผมอยากให้แสดงเฉพาะหน้าที่ติ๊กถูกจากฟอร์มเท่านั้นนะครับ ควรทำอย่างไรดีครับ ขอบคุณครับ
ตอนนี้หน้ารายงานผมให้แสดงจากคิวรี่ครับ เงื่อนไขคือให้แสดงเฉพาะที่ติ๊กถูกครับ และตรงฟอร์มก็ให้แสดงเฉพาะที่ไม่ได้ติ๊ก
และตอนนี้ปัญหาที่ประสบก็คือ เวลาติ๊กถูกที่หน้าฟอร์มแล้ว เวลาออกรายงานนั้น รายงานมันดันออกของเก่าที่เคยติ๊กถูกไปด้วยอะครับ ผมอยากให้แสดงเฉพาะหน้าที่ติ๊กถูกจากฟอร์มเท่านั้นนะครับ ควรทำอย่างไรดีครับ ขอบคุณครับ
5 Reply in this Topic. Dispaly 1 pages and you are on page number 1
2 @R03106
ไม่รู้ว่าฟอร์มพิมพ์เช็คของคุณใช้ข้อมูลจากตารางโดยตรงหรือจาก Query ครับ
ถ้าใช้จาก Query ให้เขียนในเงื่อนไขช่อง "เลขที่เช็ค" เป็น >0 หรือ In not null
รับรองว่าไม่แสดงชัวร์ แต่หากใช้จากตารางโดยตรงให้สร้าง Query ก่อนหรือเขียน SQL ให้มันก่อน ลองทำดูนะครับ
ถ้าใช้จาก Query ให้เขียนในเงื่อนไขช่อง "เลขที่เช็ค" เป็น >0 หรือ In not null
รับรองว่าไม่แสดงชัวร์ แต่หากใช้จากตารางโดยตรงให้สร้าง Query ก่อนหรือเขียน SQL ให้มันก่อน ลองทำดูนะครับ
3 @R03111
ลองส่งต.ย.มาให้ทาง mail ekchai_mon@hotmail.com ผมน่าจะช่วยแก้ให้ได้ครับเพราะผมทำฐานข้อมูลอยู่ประจำ บางครั้งอาจจะมีการเรียงลำดับคำสั่งผิด
4 @R03112
docmd.openreport "ชื่อรายงาน", acViewPreview,"Qreptเช็คต่างๆ"
อากิวร์เมนต์ที่ 3 ของคำสั่ง openreport คือการระบุตัวกรอง
ซึ่งในกรณีนี้ ผมมองว่า คิวรี่ตัวนี้แหละคือตัวกรองครับ นำมันไปใช้ได้เลยครับ
อากิวร์เมนต์ที่ 3 ของคำสั่ง openreport คือการระบุตัวกรอง
ซึ่งในกรณีนี้ ผมมองว่า คิวรี่ตัวนี้แหละคือตัวกรองครับ นำมันไปใช้ได้เลยครับ
5 @R03125
docmd.openreport "ชื่อรายงาน", acViewPreview,, "[pinyes]=-1"
ไม่ใช้ตัวกรองก็ใช้ Where เอาก็ได้ครับ
ไม่ใช้ตัวกรองก็ใช้ Where เอาก็ได้ครับ
Time: 0.3365s
>=[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
แค่นี้ก็สามารถพิมพ์รายงานตามช่วงที่ต้องการได้ครับ