โค้ดที่ใช้ตอนแรกเอามาจากที่สอนในยูทูป 2 ท่านค่ะ
โค้ดหลายตัวแล้วที่ใช้แล้วไม่ได้ (ทั้งโค้ดบาท,แปลงอักษร,โค้ดปุ่มพิมพ์ ฯลฯ) ต้องได้จากหลายท่านในนี้ เป็นเพราะอะไรคะ ที่เค้าใช้ได้ แต่เราใช้ไม่ได้ ขึ้นอยู่กับเวอร์ชั่น Access หรือว่าอะไรคะ
แล้วพอเมื่อไม่ได้ ก็ไปต่อไม่เป็นค่ะ ถ้าอยากเป็น ต้องเริ่มจากอะไรคะ (ถ้าโค้ดนั้นใช้ไม่ได้ ควรใช้โค้ดไหนยังไง ต้องเรียนรู้จากอะไรคะ )
โค้ดพวกนี้สิ่งที่เราต้องรู้ก่อนก็คือชนิดของข้อมูลครับ เช่น ต้องดูว่า SaleNo นั้นชนิดข้อมูลเป็นอะไร
1.ถ้าเป็นตัวเลข หรือตัวแปรที่เป็นตัวเลขถ้าเป็นตัวเลขท่านจะใช้แบบที่ทำอยู่ได้เลย
1.ใส่โค้ดที่ macro Builder คือ
="[rpt_Sale_H2]![SaleNo]=
" & [Forms]![fmSale_H]![SaleNo]หรือ
="[rpt_Sale_H2]![SaleNo]=
" & [Forms]![fmSale_H]![SaleNo] & ""
2. ใส่โค้ดที่ code Builder คือ
if Not isnull(me.SaleNo) Then
DoCmd.OpenReport"rpt_Sale_H2",acViewPreview,,"[SaleNo]=
" & me.SaleNoEnd if
หรือ
DoCmd.OpenReport"rpt_Sale_H2",acViewPreview,,"[SaleNo]=
" & me.SaleNo & ""2.ถ้าเป็นข้อความ(text)ปัญหาของข้อความคือต้องมีเครื่องหมาย
' หรือ single quote เพื่อบอกให้โปรแกรมทราบว่าเราอ้างอิง คอนโทรลที่เป็นข้อความ ในกรณี SaleNo ของคุณเก็บข้อมูล 0001 นั้นเป็นข้อความ โค้ดที่ใช้เลยต้องมี single quote ปิดหัวท้ายด้วยเช่น
1.ใส่โค้ดที่ macro Builder คือ
="[rpt_Sale_H2]![SaleNo]=
'" & [Forms]![fmSale_H]![SaleNo] & "'"2. ใส่โค้ดที่ code Builder คือ
if Not isnull(me.SaleNo) Then
DoCmd.OpenReport"rpt_Sale_H2",acViewPreview,,"[SaleNo]=
'" & me.SaleNo & "'"End if
หรือ
DoCmd.OpenReport"rpt_Sale_H2",acViewPreview,,"[SaleNo]=
'" & [Forms]![fmSale_H]![SaleNo] & "'"