Page 1 of 1
ลองทำ Matching ไม่ได้ตามตัวอย่าง ช่วยด้วยคะ
Posted: Wed Aug 11, 2010 10:57 am
by pimna
อาจารย์ คะ
มีข้อสงสัย ตามตัวอย่าง ดังนี้
1. ลองใช้ Fuction ตามตัวอย่างที่แนบแต่ทำไมไม่ได้ตามค่าที่ต้องการ
2. ตาม File ที่ test ต้องการให้แสดงค่าของ Item ที่ระบุ ตามบรรทัดที่ต้องการ
รบกวนด้วยคะ พยายามหลายครั้งแล้ว
Re: ลองทำ Matching ไม่ได้ตามตัวอย่าง ช่วยด้วยคะ
Posted: Wed Aug 11, 2010 1:49 pm
by snasui
ลองตามนี้ครับ
ที่ไฟล์ test.xls, Sheet Form, Cell C3 คีย์
=INDEX(Database!$B$3:$G$3,MATCH(B3,INDEX(Database!$B$4:$G$19,MATCH(A3,Database!$A$4:$A$19,0),0),0))
Enter > Copy ลงด้านล่าง
เนื่องจากข้อมูลในตารางใน Sheet Database ไม่ได้เรียงไปทางขวาแบบ
น้อยไปหามาก ฟังก์ชั่น Match ในสูตรด้านบนต้องเติมส่วนประกอบสุดท้ายเป็น 0 เสมอครับ
Re: ลองทำ Matching ไม่ได้ตามตัวอย่าง ช่วยด้วยคะ
Posted: Wed Aug 11, 2010 3:23 pm
by pimna
ขอบคุณคะ
Re: ลองทำ Matching ไม่ได้ตามตัวอย่าง ช่วยด้วยคะ
Posted: Wed Aug 11, 2010 3:30 pm
by pimna
ถามเพิ่มเติมอีกนะคะ ว่า
1. ถ้าเรียงจากมากไปน้อย ต้องเติมอย่างไร
2. ทำอย่างไรกรณี เพิ่มข้อมูลบรรทัดต่อไป แล้วสูตร Copy มาอัติโนมัติคะ
ขอบคุณคะ
Re: ลองทำ Matching ไม่ได้ตามตัวอย่าง ช่วยด้วยคะ
Posted: Wed Aug 11, 2010 3:57 pm
by snasui
pimna wrote:ถามเพิ่มเติมอีกนะคะ ว่า
1. ถ้าเรียงจากมากไปน้อย ต้องเติมอย่างไร
2. ทำอย่างไรกรณี เพิ่มข้อมูลบรรทัดต่อไป แล้วสูตร Copy มาอัติโนมัติคะ
ขอบคุณคะ
หากข้อมูลที่ต้องการ Match เรียงจากมากไปน้อย ฟังก์ชั่น Match ควรเติมส่วนประกอบสุดท้ายเป็น -1 ครับ
สำหรับ Match นั้นมีส่วนประกอบสุดท้ายเพื่อใช้หาข้อมูลใน 3 แบบคือ
1. ข้อมูลเรียงจากน้อยไปหามาก ใช้ 1 หรือ ปล่อยว่าง
2. ข้อมูลไม่เรียง ใช้ 0
3. ข้อมูลเรียงจากมากไปหาน้อย ใช้ -1
แบบที่ 1 และ 3 คำนวณได้รวดเร็วมาก เพราะไม่ได้ Match แบบตัวต่อตัว แต่เป็นการ Match ที่เรียกว่า Binary Search คร่าว ๆ เท่านี้ก่อนครับ
ส่วนการเพิ่ม Data แล้วต้องการให้สูตร Copy เองอัตโนมัตินั้น ให้กำหนดพื้นที่เป้าหมาย (
สมมุติทำที่ Sheet Form) เป็น List ครับ โดยลองตามนี้ครับ
คลิกลงในเซลล์ A3 > คลิกขวา > Create List > ทำเครื่องหมายที่ My list has headers > OK
จากนั้นเมื่อเพิ่มหรือลดข้อมูล สูตรจะเพิ่มให้อัตโนมัติ