กระทู้เก่าบอร์ด อ.สุภาพ ไชยา
        
           611   2		  
          
					  
		    URL.หัวข้อ / 
		    URL
        
        limited display data in list oject in access 97 or 2000      
		
    
      ใครมีวิธีแก้ไขปัญหาของ object list  บ้าง  เพราะมันมีข้อจำกัดในการ แสดงผล ได้เพียง ประมาณ  65535 กว่า Record เท่านั้น
ใครเคยใช้ list แบบกำหนดแสดง ทีละ Page บ้าง เช่น กำหนดให้ list ที่ 1 แสดงข้อมูลที่ 1-50000 และ list ที่ 2 แสดงข้อมูลที่ 500001 -100000 ช่วยแนะนำหน่อยนะ
    
  ใครเคยใช้ list แบบกำหนดแสดง ทีละ Page บ้าง เช่น กำหนดให้ list ที่ 1 แสดงข้อมูลที่ 1-50000 และ list ที่ 2 แสดงข้อมูลที่ 500001 -100000 ช่วยแนะนำหน่อยนะ
				2 Reply in this Topic. Dispaly 1  pages and you are on page number 1 
				
        
    1 @R00007    
        
  
      ในความคิดผมนะ ก่อนอื่นต้องเราไม่ควรที่จะดึงข้อมูลขึ้นมาแสดงมากเช่นนี้ เพราะจะทำให้เครื่องฯ ช้า
เราควรจะดึงเฉพาะข้อมูลที่ต้องการเท่านั้น ซึ่งอาจจะต้องใช้ Query เข้าไปกรองเอาเฉพาะส่วนที่เราต้องการ
เนื่องจาก Access มีข้อจำกัดดังที่กล่าวมา ถ้าเราดึงข้อมูลมากขนาดนั้น คงจะเสียเวลามา ยิ่งมาทำเป็น 2 List ก็คงจะช้ามากไปอีก
แต่อย่างไรก็ตามลองดูตัวอย่างข้างล่าง ซึ่งอาจจะไม่ตรงเท่าไร แต่ควรจะใช้ List Box เดียว แต่ดึงข้อมูลมาดูที่ละน้อยครับ
ขั้นตอนมีดังนี้
1. สร้าง Form ขึ้นมาอันหนึ่ง ใส่ List Box ลงไป ตั้งชื่ออะไรก็ได้ แต่ผมตั้งเป็น lst2  และ กำหนด Row Source Type เป็น Value List และใส่ปุ่มชื่อ cmdAddList แล้วใส่โค้ดต่อไปนี้ไป โดยดึงข้อมูลใน Field ชื่อ NumberUP ในตาราง tblListLimit
Private Sub cmdAdd_List_Click()
Dim dbs As Database, rst As Recordset
Dim lst2 As ListBox
Dim I As Integer
On Error Resume Next
Set dbs = CurrentDb
Set lst2 = Me!List2
With dbs
    Set rst = .OpenRecordset("tblListLimit")
        rst.Move 200
        For I = 1 To 300
            If lst2.RowSource = "" Then
                lst2.RowSource = rst!NumberUP
            Else
                lst2.RowSource = lst2.RowSource & ";" & rst!NumberUP
            End If
            rst.MoveNext
        Next I
rst.Close
.Close
End With
End Sub
จากตัวอย่างข้างต้นเป็นการแสดงตั้งแต่ Record ที่ 200 เป็นต้นไป จำนวน 300 records ซึ่ง Value List จะจำกัดแสดงไม่เกิน 400 กว่ารายการใน 1 List
ลองนำไปประยุกต์ดูนะครับ    
    
  
        
    2 @R00008    
        
    
      I didn't think Access could handle that many records effectively, but here's how to do it.
In the underlying table add an autonmber field if you don't already have one - lets call it ID
In the Row Source of list box 1 create a query and add <50001 to the ID's criteria row. Do the same for list box 2 but add >50000 to the ID's criteria row.
HTH
Rick 
    
    
  
      Time: 0.0553s
    
      
		