สอบถามเรื่องกำหนดให้มองเห็น Record supFromที่เรากำ
กระทู้เก่าบอร์ด อ.Yeadram

 2,214   11
URL.หัวข้อ / URL
สอบถามเรื่องกำหนดให้มองเห็น Record supFromที่เรากำ

สวัสดีครับอาจารย์ และสมาชิกทุกท่านครับ

กระผมอยากสอบถามเกี่ยวกับ การกำหนดให้มองเห็น Sup-Form แบบ แผ่นข้อมูล
ให้เห็นแค่ 10 Reccord พอมีตัวที่ 11 ก็ให้เป็นหน้าต่อไป
พอจะมีวิธีคิด หรือวิธีทำแบบไหนช่วยแนะนำบ้างครับ



จากรูปครับพอเป็นตัวที่ 11 อยากให้มันเป็นอีกหน้าหนึ่งครับ และRecord 21 ก็เป็นหน้าต่อไปประมาณนี้ครับ   พอจะมีวิธีไหนที่จะทำได้บ้างครับ
หรือพอจะมีตัวอย่างให้ดูบ้างไหมครับ

ขอบคุณมากครับ

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

1 @R16395
หากคุณมี ID แบบ Autonumber ที่รันตั้งแต่ 1 ไปเรื่อยๆ และไม่มีการข้ามเลขเลย ก็ไม่ยากครับ ประมาณว่าใช้การ Filter ข้อมูลของ subform แทนได้เลยมั้ง ตัวอย่างเช่น
Main Form ชื่อ Form1
Sub Form ชื่อ Form2
Sub Form ดึงข้อมูลมาจากตารางชื่อ Table1
ฟิลด์ AutoNumber ใน Form2 ชื่อ ID

- ใน Main Form เขียนคำสั่งใน Event > On Current ดังนี้:

    Forms!Form1.Form2.Form.Filter = "Table1!ID > " & (Me.CurrentRecord - 1) * 10 & " AND Table1!ID < " & Me.CurrentRecord * 10 + 1
    Forms!Form1.Form2.Form.FilterOn = True

ปรับใช้ดูครับ
2 @R16400
ผมลองเอา Code ใส่ใน Form เพื่อจะได้ปรับใช้ดูแต่
ลองเอาไปใส่แล้วมัน Error


รบกวนคุณ TTT ดูให้ทีครับ
3 @R16403
คงประมาณแทนค่าชื่อตาราง ฟิลด์ ฟอร์ม ผิด ก็แทนให้ถูกครับ ลองแก้ไขดูครับ

ปล. ลิ้งค์ประเภทนี้ผมไม่โหลดนะครับ เครื่องผมเอาไว้ใช้งานไม่ขอเสี่ยง และผมก็ไม่มีเวลาดูให้ด้วย ต่อไปผมจะช่วยแนะนำแค่แนวคิดนะครับ
4 @R16404
ได้ครับ ขอบคุณครับ
เดี๋ยวหากผมติดผมส่งเป็นรูปให้ชี้แนะนะครับ
ขอบคุณครับ
5 @R16405
เรียนคุณ TTT

ขึ้น Error ตามภาพครับ



ผมก็ลองเช็ค ชื่อตาราง ฟิลด์ ฟอร์ม ผมได้ตั้งแบบคุณ TTT ทุกอย่างเลยนะครับ
แต่ก็ไม่ผ่านครับ มันขึ้นแบบในรูปครับ
6 @R16406
อื่ม! อ่านแล้วผมว่าโจทย์ที่คุณตั้งขึ้นมามันลอยๆนะครับ แสดงว่าคุณไม่เคยมีการคิดมาก่อนหน้านี้เลย
สิ่งคุณอยากได้คือ เมื่อ Main Form อยู่ที่หน้า 1 ให้แสดงเรคคอร์ดที่ SubForm ลำดับ ID ที่ 1-10 Main Form อยู่ทหน้า 2 ก็จะแสดงเรคคอร์ดใน Sub Form ลำดับ ID ที่ 11-20
ฉนั้นใน Main Form คุณต้องมีการดึงข้อมูลจากตารางหรือคิวรี่ด้วยซิครับ แต่ที่มัน Error ฟ้องแบบนี้ แสดงว่า MainForm น่าจะเป็น Unbound ทำให้ไม่มีค่า CurrentRecord แล้วคุณจะเลื่อนหน้า MainForm โดยใช้ฐานข้อมูลอะไรหรือครับ
ผมว่าคุณควรออกแบบรูปร่างหน้าตา การใช้ฐานข้อมูลจาก MainForm SubForm ให้ได้เสียก่อน แล้วค่อยมาลงเรื่องรายละเอียดประเภทคัดแยกข้อมูลจะดีกว่านะครับ
7 @R16407
ขอบคุณมากครับ
กระจ่างเลยครับ คือผมอาจจะเข้าใจยากหน่อยครับ
แต่จากการที่คุณ TTT อะธิบายผมเข้าใจแล้วครับ
ผมจะทำตามดูครับ
เดี๋ยวมาแจ้งผลครับ


ขอบคุณครับ
8 @R16408

ได้แล้วครับ ตามนี้ครับ

Form_Form2.Filter = "Table1!ID > " & (Me.CurrentRecord - 1) * 10 & " AND Table1!ID < " & Me.CurrentRecord * 10 + 1
             Form_Form2.FilterOn = True

ขอบคุณ คุณ TTT ครับ
9 @R16460
สอบถามคุณ TTT อีกครั้งครับ หรือท่านอื่นๆที่เข้าใจเรื่อง นี้ครับ

พอดีพมมี Form คล้ายๆกันนี้ประมาณ 3 Form ครับ
ทุกๆ Form จะมี Form หลักของตัวเองอยู่ครับ   อย่างเช่น Form2 เป็น formย่อยของ A1 เป็นต้นครับ ผมใส่ Code ทุกFormหลัก   A1,A2,A3 ที่Form_Current()

Formที่ 1
Form_Form2.Filter = "Query1!ID > " & (Me.CurrentRecord - 1) * 10 & " AND Query1!ID < " & Me.CurrentRecord * 10 + 1
Form_Form2.FilterOn = True

Formที่ 2
Form_Form3.Filter = "Query2!ID > " & (Me.CurrentRecord - 1) * 10 & " AND Query2!ID < " & Me.CurrentRecord * 10 + 1
Form_Form3.FilterOn = True

Formที่ 3
Form_Form4.Filter = "Query3!ID > " & (Me.CurrentRecord - 1) * 10 & " AND Query3!ID < " & Me.CurrentRecord * 10 + 1
Form_Form4.FilterOn = True

ต่อพอผลลัพที่ได้คือ
Formที่ 1 ได้ 10 Reccord แล้วเปลี่ยนหน้าตามต้องการ
แต่
Formที่ 2 ได้หน้าว่าง 1 หน้าแล้วเป็นข้อมูลครับ
Formที่ 3 ได้หน้าว่าง 2 หน้าแล้วเป็นข้อมูลครับ

คืออยากทราบว่าทำไม่มันเป็นค่าว่าง 1 หน้าก่อนแล้วค่อยมีข้อมูลครับ
ทั้งๆที่มันเรียกใช้ Query คนละตัวครับ แต่ Query ทุกตัวมาจาก Teble เดียวกันนะครับ

ขอบคุณครับ


10 @R16461
ลองเอา code ทั้งหมดมาวางใน Form1 ดูสิครับ
11 @R16462
ครับจาก Cord ผมวาง Form หลัก   ทั้ง 3 ตัวครับ

แล้ว Form หลักที่ 2 และ3   มันจะมีหน้าว่างก่อน1 และ2 หน้า ครับ

ก็เลยงงว่ามันเกิกจากตัวไหนได้บ้างครับ


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