กระทู้เก่าบอร์ด อ.Yeadram
        
           2,120   4		  
          
					  
		    URL.หัวข้อ / 
		    URL
        
        สอบถาม Combo box และ List box โดยใช้ RowSource ค่ะ      
    
      ขอเรียนสอบถามเกี่ยวกับการดึงข้อมูลจาก Combo box และ List box โดยใช้ RowSource ค่ะ
tableใบเสนอราคา มีฟิล์ด เลขที่,วันที่,ลูกค้า,ผู้เสนอ,ผลสรุป
tableรายละเอียด มีฟิล์ด เลขที่,ลำดับสินค้า,รายการสินค้า,ราคาต่อหน่วย,จำนวน
Query1 ดึงข้อมูลจาก tableใบเสนอราคา มาดังนี้ [เลขที่] , [วันที่] , [ลูกค้า] , [ผู้เสนอ] , [ผลสรุป]
ต่อไปได้สร้างฟอร์มขึ้นมา และสร้าง tab control ไว้ภายในฟอร์ม
ในแต่ละ tab ได้สร้าง List box ชื่อ List1 โดยมี Row Source คือ SELECT [Query1].[เลขที่], [Query1].[วันที่] , [Query1].[ลูกค้า] , [Query1].[ผู้เสนอ]
FROM [Query1]
และสร้าง Combo Box ชื่อ Cb1 โดยมี Row Source คือ "ได้งาน";"ไม่ได้งาน";"ยังไม่สรุป"
ที่ Cb1 ได้เขียนคำสั่ง After Update Event ดังนี้ Private Sub Cb1_AfterUpdate()
Sq = "SELECT [Query1].[เลขที่], [Query1].[วันที่] , [Query1].[ลูกค้า] , [Query1].[ผู้เสนอ]
FROM [Query1]
HERE ((([Query1].[ผลสรุป])='" + Cb1 + "'));"
List1.RowSource = Sq
End Sub
ปัญหาที่พบคือ เมื่อคลิกเลือกค่าใน Cb1 แล้ว ข้อมูลใน List1 ไม่เปลี่ยนตามค่ะ เช่น ใน Cb1 เลือก "ได้งาน" ผลที่ได้คือ ใน List1 ก็ยังคงดึงใบเสนอราคามาทุกใบค่ะ ทั้งๆที่ที่ต้องการคือ เฉพาะใบเสนอราคาที่มีผลสรุป = ได้งาน
รบกวนผู้รู้ช่วยบอกวิธีแก้ไข หรือคำแนะนำให้ด้วยนะคะ
ขอบคุณมากค่ะ
    
  tableใบเสนอราคา มีฟิล์ด เลขที่,วันที่,ลูกค้า,ผู้เสนอ,ผลสรุป
tableรายละเอียด มีฟิล์ด เลขที่,ลำดับสินค้า,รายการสินค้า,ราคาต่อหน่วย,จำนวน
Query1 ดึงข้อมูลจาก tableใบเสนอราคา มาดังนี้ [เลขที่] , [วันที่] , [ลูกค้า] , [ผู้เสนอ] , [ผลสรุป]
ต่อไปได้สร้างฟอร์มขึ้นมา และสร้าง tab control ไว้ภายในฟอร์ม
ในแต่ละ tab ได้สร้าง List box ชื่อ List1 โดยมี Row Source คือ SELECT [Query1].[เลขที่], [Query1].[วันที่] , [Query1].[ลูกค้า] , [Query1].[ผู้เสนอ]
FROM [Query1]
และสร้าง Combo Box ชื่อ Cb1 โดยมี Row Source คือ "ได้งาน";"ไม่ได้งาน";"ยังไม่สรุป"
ที่ Cb1 ได้เขียนคำสั่ง After Update Event ดังนี้ Private Sub Cb1_AfterUpdate()
Sq = "SELECT [Query1].[เลขที่], [Query1].[วันที่] , [Query1].[ลูกค้า] , [Query1].[ผู้เสนอ]
FROM [Query1]
HERE ((([Query1].[ผลสรุป])='" + Cb1 + "'));"
List1.RowSource = Sq
End Sub
ปัญหาที่พบคือ เมื่อคลิกเลือกค่าใน Cb1 แล้ว ข้อมูลใน List1 ไม่เปลี่ยนตามค่ะ เช่น ใน Cb1 เลือก "ได้งาน" ผลที่ได้คือ ใน List1 ก็ยังคงดึงใบเสนอราคามาทุกใบค่ะ ทั้งๆที่ที่ต้องการคือ เฉพาะใบเสนอราคาที่มีผลสรุป = ได้งาน
รบกวนผู้รู้ช่วยบอกวิธีแก้ไข หรือคำแนะนำให้ด้วยนะคะ
ขอบคุณมากค่ะ
				4 Reply in this Topic. Dispaly 1  pages and you are on page number 1 
				
        
    2 @R11645    
        
  
      HERE ((([Query1].[ผลสรุป])='" + Cb1 + "'));" 
หรือ WHERE คะ?
    
  หรือ WHERE คะ?
        
    3 @R11646    
        
  
      แล้วถ้าจะให้แสดงหมดด้วยละค่ะ    
    
  
        
    4 @R11679    
        
    
      ที่จริงแล้วAccessมีเครื่องมือให้ทำComboอย่างมีประสิทธิ์ภาพอยู่แล้วไม่ต้องเขียนโคท    
    
  
      Time: 0.0610s
    
      
		
จะได้
List1.Rowsource=sq
List1.Requery