กระทู้เก่าบอร์ด อ.Yeadram
963 10
URL.หัวข้อ /
URL
การรันตัวเลขในแต่ละหน้าให้เท่ากันในรายงาน
เรียน อาจารย์ทุกท่านครับ ผมต้องการสร้างรายงานให้แต่ละหน้ามีหมายเลข ที่ ตั้งแต่เลข 1-30 ไม่ทราบว่าต้องทำอย่างไรครับ เช่น
ข้อมูลในหน้าที่ 1
ที่ รหัส ชื่อ
1 001 ก
2 002 ข
3 003 ค
.......................ไปเรื่อยๆ
29 029 ง
30 030 จ
ข้อมูลในหน้าที่ 2
ที่ รหัส ชื่อ
1 031 ม
2 032 ย
3 033 ร
.......................ไปเรื่อยๆ
29 029 น
30 030 บ
สรุปคือ ตรง txt=ที่ ให้รันหมายเลขเริ่มต้นเป็น 1 - 30 พอขึ้นหน้าใหม่ ก็ให้รันหมายเลขเริ่มต้นเป็น 1 - 30 ไปอย่างนี้ทุกๆหน้าครับ
ข้อมูลในหน้าที่ 1
ที่ รหัส ชื่อ
1 001 ก
2 002 ข
3 003 ค
.......................ไปเรื่อยๆ
29 029 ง
30 030 จ
ข้อมูลในหน้าที่ 2
ที่ รหัส ชื่อ
1 031 ม
2 032 ย
3 033 ร
.......................ไปเรื่อยๆ
29 029 น
30 030 บ
สรุปคือ ตรง txt=ที่ ให้รันหมายเลขเริ่มต้นเป็น 1 - 30 พอขึ้นหน้าใหม่ ก็ให้รันหมายเลขเริ่มต้นเป็น 1 - 30 ไปอย่างนี้ทุกๆหน้าครับ
10 Reply in this Topic. Dispaly 1 pages and you are on page number 1
2 @R22807
เรียน อาจารย์สันติสุข
เท็กซ์บ็อกซ์ "ที่" มันเป็นสีเขียว และ ตอน printer preview ตรงช่อง เท็กซ์บ็อกซ์ "ที่" มันขึ้นเป็น #Type! ครับ
เท็กซ์บ็อกซ์ "ที่" มันเป็นสีเขียว และ ตอน printer preview ตรงช่อง เท็กซ์บ็อกซ์ "ที่" มันขึ้นเป็น #Type! ครับ
3 @R22808
โค้ดที่ผมให้ไปในลิงค์ก่อนหน้าผิด ให้เปลี่ยนจาก myCount Mod เป็น myCounter Mod ครับ นอกนั้นถูกต้องแล้ว
4 @R22809
ผมใส่ดังนี้ ก็ยังคงเป็นเหมือนเดิมครับ
Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
Me!myPageBreak.Visible = ((Me!myCounter Mod 29) = 0)
End Sub
ที่ รหัส ชื่อ
#Type! 001 ก
#Type! 002 ข
#Type! 003 ค
ตรง เท็กซ์บ็อกซ์ "ที่" เวลาพิมพ์มันจะขึ้นดังนี้ครับ access 2010
=[myCounter]-(30*Int(([myCounter]-1)/30))
Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
Me!myPageBreak.Visible = ((Me!myCounter Mod 29) = 0)
End Sub
ที่ รหัส ชื่อ
#Type! 001 ก
#Type! 002 ข
#Type! 003 ค
ตรง เท็กซ์บ็อกซ์ "ที่" เวลาพิมพ์มันจะขึ้นดังนี้ครับ access 2010
=[myCounter]-(30*Int(([myCounter]-1)/30))
5 @R22810
คุณลองเปลี่ยนจาก =[myCounter]-(30*Int(([myCounter]-1)/30)) มาเป็น =[myCounter] ดูครับ ว่าพิมพ์ได้หรือไม่ แต่ค่าที่พิมพ์จะไม่ใช่อย่างที่ต้อง ตรงนี้ช่างมันก่อน
6 @R22811
พิมพ์ได้ครับ
7 @R22812
ลองเปลี่ยนเป็น =Int([myCounter]) ว่าทำงานได้ไหม ถ้าได้ ลองเพิ่มทีละส่วนใน expression ดูครับ ว่าเพิ่มจนถึงจุดไหนที่ทำให้เกิดปัญหา เพิ่มจนกว่าจะเหมือนตามที่เราต้องการครับ
8 @R22813
พอผมพิมพ์ =[myCounter] ผมสังเกตุดู เท็กซ์บ็อกซ์ที่ผมตั้งชื่อว่า "myCounter"
จะมีเครื่องหมายตกใจ เอาเมาส์ไปชี้ดูจะมีข้อความว่า "This control has a reference to itself" ครับ
พอผมพิมพ์ =Int([myCounter]) มันก็ยังมีเครื่องหมายตกใจเหมือนเดิม
จะมีเครื่องหมายตกใจ เอาเมาส์ไปชี้ดูจะมีข้อความว่า "This control has a reference to itself" ครับ
พอผมพิมพ์ =Int([myCounter]) มันก็ยังมีเครื่องหมายตกใจเหมือนเดิม
9 @R22814
Control Source property ของเท็กซ์บ็อก myCounter จะมีค่าเป็น =1 เสมอ ไม่ต้องแก้ไขอะไรนะครับ ให้ทดลองทำเฉพาะเท็กซ์บ็อกซ์ "ที่" เท่านั้น
10 @R22815
ได้แล้วครับอาจารย์ ขอบคุณมากครับ
Time: 0.3508s
ส่วนอย่างที่สองคือ ในทุกๆหน้า ให้พิมพ์เลขบรรทัดเริ่มจาก 1 ใหม่ ก็ให้ Control Source property ของเท็กซ์บ็อกซ์ "ที่" มีค่าเป็น = myCounter - (30 * int((myCounter-1)/30)) (ต้องมีเครื่องหมาย = ด้วยนะครับ)