กระทู้เก่าบอร์ด อ.Yeadram
        
           3,987   20		  
          
					  
		    URL.หัวข้อ / 
		    URL
        
        ขอคำแนะนำวิธีสร้างกล่องคำสั่งผสมที่แสดงเฉพาะข้อมูล      
    
      สวัสดีค่ะ... ท่านอาจารย์ทุกๆท่าน วันนี้หนูมีเรื่องมารบกวนสอบถามความรู้จากทุกท่านค่ะ คือว่าใน Access 2003 สามารถที่จะสร้างกล่องคำสั่งผสมให้ออกมาในรูปแบบการค้นหาข้อมูลเหมือนอย่างในเว็บ Google ได้ไหมค่ะ คือเนื่องจากหนูมีข้อมูลของรหัสสินค้าซึ่งอยู่ในสต๊อกสินค้าเป็นพันๆเรคอร์ดเลยค่ะ ทีนี้ถ้าหนูต้องการที่จะคีย์ข้อมูลเข้าไป แล้วให้ขึ้นมาเฉพาะอักษรที่หนูคีย์ ยกตัวอย่างนะคะ
  ท่านอาจารย์ทุกๆท่าน วันนี้หนูมีเรื่องมารบกวนสอบถามความรู้จากทุกท่านค่ะ คือว่าใน Access 2003 สามารถที่จะสร้างกล่องคำสั่งผสมให้ออกมาในรูปแบบการค้นหาข้อมูลเหมือนอย่างในเว็บ Google ได้ไหมค่ะ คือเนื่องจากหนูมีข้อมูลของรหัสสินค้าซึ่งอยู่ในสต๊อกสินค้าเป็นพันๆเรคอร์ดเลยค่ะ ทีนี้ถ้าหนูต้องการที่จะคีย์ข้อมูลเข้าไป แล้วให้ขึ้นมาเฉพาะอักษรที่หนูคีย์ ยกตัวอย่างนะคะ
ตัวอย่าง
ชื่อรหัสสินค้า
AS 302
AS 402
AS 403
AS 404
BD 101
BD 200
ซึ่งถ้าเป็นกล่องคำสั่งผสมที่ได้สร้างมาปกติจะโชว์ทุกเรคอร์ดเลยค่ะ ถ้าเราต้องการให้คีย์อักษรตัวไหนก็ให้ขึ้นมาเฉพาะตัวอักษรนั้นๆ เช่น ถ้าหนูพิมพ์อักษร AS แล้วก็ให้รหัสสินค้าในกล่องคำสั่งผสมโชว์ขึ้นมาแค่ AS ซึ่งมีอยู่ 4 เรคอร์ดตามตัวอย่างค่ะ ต่อมาพอหนูพิมพ์เพิ่มเติมลงไปเช่น AS 3 ก็ให้รหัสขึ้นมาเฉพาะ AS 302 โชว์ขึ้นมาแค่เรคคอร์ดเดียวตามตัวอย่างค่ะ
การทำงานในลักษณะนี้ ใน Access 2003 สามารถทำได้ไหมค่ะ แล้วมีวิธีการสร้างอย่างไร รบกวนสอบถามท่านอาจารย์ด้วยค่ะ.... 
 
ปล. กล่องคำสั่งผสมอ้างอิงมาจากตาราง StockAmount ชื่อว่าฟิลด์ StoPro ค่ะ
    
   ท่านอาจารย์ทุกๆท่าน วันนี้หนูมีเรื่องมารบกวนสอบถามความรู้จากทุกท่านค่ะ คือว่าใน Access 2003 สามารถที่จะสร้างกล่องคำสั่งผสมให้ออกมาในรูปแบบการค้นหาข้อมูลเหมือนอย่างในเว็บ Google ได้ไหมค่ะ คือเนื่องจากหนูมีข้อมูลของรหัสสินค้าซึ่งอยู่ในสต๊อกสินค้าเป็นพันๆเรคอร์ดเลยค่ะ ทีนี้ถ้าหนูต้องการที่จะคีย์ข้อมูลเข้าไป แล้วให้ขึ้นมาเฉพาะอักษรที่หนูคีย์ ยกตัวอย่างนะคะ
  ท่านอาจารย์ทุกๆท่าน วันนี้หนูมีเรื่องมารบกวนสอบถามความรู้จากทุกท่านค่ะ คือว่าใน Access 2003 สามารถที่จะสร้างกล่องคำสั่งผสมให้ออกมาในรูปแบบการค้นหาข้อมูลเหมือนอย่างในเว็บ Google ได้ไหมค่ะ คือเนื่องจากหนูมีข้อมูลของรหัสสินค้าซึ่งอยู่ในสต๊อกสินค้าเป็นพันๆเรคอร์ดเลยค่ะ ทีนี้ถ้าหนูต้องการที่จะคีย์ข้อมูลเข้าไป แล้วให้ขึ้นมาเฉพาะอักษรที่หนูคีย์ ยกตัวอย่างนะคะ
ตัวอย่าง
ชื่อรหัสสินค้า
AS 302
AS 402
AS 403
AS 404
BD 101
BD 200
ซึ่งถ้าเป็นกล่องคำสั่งผสมที่ได้สร้างมาปกติจะโชว์ทุกเรคอร์ดเลยค่ะ ถ้าเราต้องการให้คีย์อักษรตัวไหนก็ให้ขึ้นมาเฉพาะตัวอักษรนั้นๆ เช่น ถ้าหนูพิมพ์อักษร AS แล้วก็ให้รหัสสินค้าในกล่องคำสั่งผสมโชว์ขึ้นมาแค่ AS ซึ่งมีอยู่ 4 เรคอร์ดตามตัวอย่างค่ะ ต่อมาพอหนูพิมพ์เพิ่มเติมลงไปเช่น AS 3 ก็ให้รหัสขึ้นมาเฉพาะ AS 302 โชว์ขึ้นมาแค่เรคคอร์ดเดียวตามตัวอย่างค่ะ
การทำงานในลักษณะนี้ ใน Access 2003 สามารถทำได้ไหมค่ะ แล้วมีวิธีการสร้างอย่างไร รบกวนสอบถามท่านอาจารย์ด้วยค่ะ....
 
 
ปล. กล่องคำสั่งผสมอ้างอิงมาจากตาราง StockAmount ชื่อว่าฟิลด์ StoPro ค่ะ
				20 Reply in this Topic. Dispaly 1  pages and you are on page number 1 
				
        
    2 @R11070    
        
  
      ขอบคุณค่ะอาจารย์ Un ไม่ทราบว่าพอจะมีลิ้งตอบคำถามของอาจารย์ Yeadram ไหมค่ะ หนูจะลองศึกษาดู ขอบคุณค่ะ... 
    
    
   
    
        
    3 @R11071    
        
  
      คุณพรครับ ผมลองหามันก็หาไม่เจอจำชื่อไม่ได้
แต่ไฟล์ที่อาจารย์ Yeadram ให้มายังอยู่
แต่ผมว่าต้องขออนุญาติอาจารย์ก่อน เดี๋ยวอาจารย์มาตอบ
ผมจะโหลดขึ้น Gmail ของบอร์ดให้ครับ
ไฟล์ชื่อ ydrExample
    
  แต่ไฟล์ที่อาจารย์ Yeadram ให้มายังอยู่
แต่ผมว่าต้องขออนุญาติอาจารย์ก่อน เดี๋ยวอาจารย์มาตอบ
ผมจะโหลดขึ้น Gmail ของบอร์ดให้ครับ
ไฟล์ชื่อ ydrExample
        
    4 @R11072    
        
  
      อีกนิดครับอย่าเรียกผมอาจารย์เลยครับ ผมเป็นนักเรียนในบอร์ดนี้เหมือนกัน    
    
  
        
    5 @R11073    
        
  
      ขอบคุณค่ะ... คุณ Un ที่ชี้แนะค่ะ
 คุณ Un ที่ชี้แนะค่ะ    
    
   คุณ Un ที่ชี้แนะค่ะ
 คุณ Un ที่ชี้แนะค่ะ    
        
    6 @R11074    
        
  
      หนูลองค้นดูแล้วไปเจอโค๊ดนี้มาค่ะ
Private Sub cboCustomer_KeyUp(KeyCode As Integer, Shift As Integer)
Me.cboCustomer.RowSource = "select CusName,CusID from Customers where (CusName like ""*" & Me.cboCustomer.Text & "*"") or (CusID[ like ""*" & Me.cboCustomer.Text & "*"") order by CusName"
Me.cboCustomer.Dropdown
End Sub
ไม่ทราบว่าพอจะอธิบายได้ไหมค่ะ ว่าแต่ละบรรทัดเอามาจากส่วนไหน และตรงไฮไลสีน้ำเงินมาจากส่วนไหนของฟอร์มหรือตารางค่ะ รบกวนด้วยค่ะ
    
  Private Sub cboCustomer_KeyUp(KeyCode As Integer, Shift As Integer)
Me.cboCustomer.RowSource = "select CusName,CusID from Customers where (CusName like ""*" & Me.cboCustomer.Text & "*"") or (CusID[ like ""*" & Me.cboCustomer.Text & "*"") order by CusName"
Me.cboCustomer.Dropdown
End Sub
ไม่ทราบว่าพอจะอธิบายได้ไหมค่ะ ว่าแต่ละบรรทัดเอามาจากส่วนไหน และตรงไฮไลสีน้ำเงินมาจากส่วนไหนของฟอร์มหรือตารางค่ะ รบกวนด้วยค่ะ
        
    7 @R11075    
        
  
      เพิ่มเติมค่ะ หนูค้นเจอมาจากลิ้งนี้ค่ะ
http://www.thai-access.com/yeadram_view.php?topic_id=1618&page=2
    
    
  http://www.thai-access.com/yeadram_view.php?topic_id=1618&page=2
        
    8 @R11078    
        
  
      ผมโค๊ตไม่เป็นนะครับ แต่ผมมีวิธีการเดา
คำถาม R11074 จะเป็นเหตการใดเหตุการณ์หนึ่งผมก็ไม่รู้ แต่ผมจะคลิ๊กเหตุการณ์ทุกอันจนรู้ว่ามันเป็นเหตุการณ์ไหน
RowSource นี้ก็ประมาณว่าใช้ตารางหรือคิวรีไหน แต่มันมี Select.....
มันคือมุมมอง SQL ของ Query นั่นเองครับ สามารถเอาชื่อ Query ใส่ได้เลยครับ
    
  คำถาม R11074 จะเป็นเหตการใดเหตุการณ์หนึ่งผมก็ไม่รู้ แต่ผมจะคลิ๊กเหตุการณ์ทุกอันจนรู้ว่ามันเป็นเหตุการณ์ไหน
RowSource นี้ก็ประมาณว่าใช้ตารางหรือคิวรีไหน แต่มันมี Select.....
มันคือมุมมอง SQL ของ Query นั่นเองครับ สามารถเอาชื่อ Query ใส่ได้เลยครับ
        
    9 @R11079    
        
  
      คุณ Un ครับ อัพตัวอย่างไว้ในเมล์ได้เลยนะครับ รบกวนด้วยครับ
คุณพร ครับ ตัวหนังสือสีน้ำเงิน คือชื่อของฟิลด์ ที่เรานำมาเป็น แหล่งข้อมูลของ คอมโบครับ
คุณสร้างคอมโบ มาจากตารางชื่ออะไร เอาชื่อตารางไปแทนคำว่า Custumers
ฟิลด์ที่คุณเอามาใช้ (จากตาราง Custumers) มีมากี่ฟิลด์ ถ้ามาฟิลด์เดียว คงจะเป็น รหัสสินค้า ก็ให้เอา [รหัสสินค้า] ไปแทนคำว่า CusName ส่วน CustID ก็เอาออกไปเสีย เพราะของคุณใช้ฟิลด์เดียว แต่ในตัวอย่างนั้น ใช้สองฟิลด์ครับ
    
  คุณพร ครับ ตัวหนังสือสีน้ำเงิน คือชื่อของฟิลด์ ที่เรานำมาเป็น แหล่งข้อมูลของ คอมโบครับ
คุณสร้างคอมโบ มาจากตารางชื่ออะไร เอาชื่อตารางไปแทนคำว่า Custumers
ฟิลด์ที่คุณเอามาใช้ (จากตาราง Custumers) มีมากี่ฟิลด์ ถ้ามาฟิลด์เดียว คงจะเป็น รหัสสินค้า ก็ให้เอา [รหัสสินค้า] ไปแทนคำว่า CusName ส่วน CustID ก็เอาออกไปเสีย เพราะของคุณใช้ฟิลด์เดียว แต่ในตัวอย่างนั้น ใช้สองฟิลด์ครับ
        
    10 @R11082    
        
  
      ขอบคุณคุณ Un กับอาจารย์ yeadram มากๆเลยค่ะ แล้วไม่ทราบว่าเมลนี่ต้องเข้าที่เมลไหนอย่างไรค่ะ รบกวนด้วยค่ะ    
    
  
        
    11 @R11083    
        
  
      account : [email protected]
password : accgmail
    
  password : accgmail
        
    12 @R11084    
        
  
      ขอบคุณค่ะ... 
    
    
   
    
        
    13 @R11095    
        
  
      ผมฝากไฟล์ไปให้แล้วนะครับ    
    
  
        
    14 @R11097    
        
  
      ขอบคูณค่ะคุณ Un เดี๋ยวหนูจะลองศึกษาดูค่ะ ถ้าไม่เข้าใจอย่างไรคงต้องรบกวนสอบถามอีกนะคะ... 
    
    
   
    
        
    15 @R11101    
        
  
      ขอโทษด้วยค่ะคุณ Un หนูหาไฟล์ไม่เจอน่ะคะ ไม่ทราบว่าชือไฟล์อะไรหรือค่ะ รบกวนด้วยค่ะ    
    
  
        
    16 @R11103    
        
  
      ผมลองเข้าไปดูก็หาไม่เจอเหมือนกัน เข้าไปดูในเมลมันก็ส่งแล้ว ผมเลยส่งใหม่อีกครั้ง ชื่อ 
ตัวอย่างให้คุณพร
    
    
  ตัวอย่างให้คุณพร
        
    17 @R11104    
        
  
      ได้รับแล้วค่ะ ขอบคุณค่ะคุณ Un    
    
  
        
    18 @R11108    
        
  
      รบกวนสอบถามหน่อยนะคะ ไม่ทราบว่าการตั้งค่าเหล่านี้ ถ้าเป็นเมนูภาษาไทย หนูต้องไปตั้งค่าตรงส่วนไหนบ้างคะ
กำหนด property เหล่านี้ให้แก่ combo box
- Auto Expand property เป็น False/No
- Limit to List property เป็น False/No
- Column Count property เป็น 2
- Column Width property เป็น ;0 (Semicolon ตามด้วยเลขศูนย์)
ปล.Access 2003 ของหนูเป็นภาษาไทยค่ะ หนูหาไม่เจอค่ะ รบกวนด้วยค่ะ
    
    
  กำหนด property เหล่านี้ให้แก่ combo box
- Auto Expand property เป็น False/No
- Limit to List property เป็น False/No
- Column Count property เป็น 2
- Column Width property เป็น ;0 (Semicolon ตามด้วยเลขศูนย์)
ปล.Access 2003 ของหนูเป็นภาษาไทยค่ะ หนูหาไม่เจอค่ะ รบกวนด้วยค่ะ
        
    19 @R11119    
        
  
      ไม่แน่ใจอีกนะครับ
Auto Expand property เป็น False/No
ไปที่เครื่องมือ/ตัวเลือก เลือกแทป แก้ไข/ค้นหา ในบล็อก ยืนยัน
Column Count property เป็น 2
อันนี้น่าจะไปที่หน้ารายงานแล้วคลิกขวาตั้งค่าหน้ากระดาษ ไปที่คอลัมน์ ตรงจำนวนคอลัม ใส่ 2
อีกสองอันไม่รู้จักครับ
    
  Auto Expand property เป็น False/No
ไปที่เครื่องมือ/ตัวเลือก เลือกแทป แก้ไข/ค้นหา ในบล็อก ยืนยัน
Column Count property เป็น 2
อันนี้น่าจะไปที่หน้ารายงานแล้วคลิกขวาตั้งค่าหน้ากระดาษ ไปที่คอลัมน์ ตรงจำนวนคอลัม ใส่ 2
อีกสองอันไม่รู้จักครับ
        
    20 @R11122    
        
    
      ได้แล้วค่ะ ขอบคุณค่ะคุณ Un ส่วนการตั้งค่าต่างๆให้ไปใส่ตรงช่องทางด้านซ้ายมือของช่องที่ไว้เขียนโค๊ดนะคะ พอดีมั่วไปมั่วมาไปเจอเข้านะคะ.... 
    
    
   
    
      Time: 0.1121s
    
      
		
แต่ผมลองทำดู มันจะขี่ช้างจับตั๊กแตนไปหน่อยผมใช้วิธีง่ายๆ
คือ เรียงลำดับตามตัวอักษร พอเราคีย์ ตัวไหนไปมันจะวิ่งมาหาในกลุ่มที่จะใช้
เป็นทางเลือกง่ายๆ นะครับ