Page 1 of 1
การค้นหาคำ
Posted: Thu Mar 24, 2016 11:47 pm
by shadowpreten
พอดีอยากใช้สูตรง่ายๆในการหาค่ะ คำใบ้ที่ได้มา + คิดเอาเองก็มี mid rows find ไม่รู้ว่าต้องใช้ vlookup lookup left ด้วยไหม
ที่อยากทราบก็คือ พอเราคีย์ คำๆหนึ่งลงมา อย่างเช่น แตง ก็จะแสดงข้อมูลของคำที่มีแตงทุกตัวออกมาค่ะ
ถ้าตามตัวอย่างแนบคือติดที่ไม่รู้จะใช้สูตรยังไงถึงจะถูก มันขึ้นเออเร่อในส่วนที่ไม่ต้องการ จะลองทำแบบที่เคยทำก็ติดที่การแยกข้อมูลนี่แหละค่ะ
Re: การค้นหาคำ
Posted: Fri Mar 25, 2016 8:49 am
by XDoll

ลองสูตรนี้ครับ
ที่ H5 =IFERROR(INDEX($B$2:$B$31,SMALL(IFERROR(IF(FIND($E$2,$B$2:$B$31,1),ROW($B$2:$B$31)-ROW($B$2)+1),""),ROWS($H$5:H5))),"") กด Ctrl+Shift ค้างไว้แล้ว Enter คอปปี้ลงล่างครับ
Re: การค้นหาคำ
Posted: Fri Mar 25, 2016 9:22 am
by DhitiBank

สมทบอีกสักสูตรครับ (แต่สูตรที่คุณ XDoll ให้น่าจะเร็วกว่า)
F6
=IFERROR(INDEX($B$2:$B$31,MATCH(1,IF(ISNUMBER(SEARCH($E$2,$B$2:$B$31)),IF(COUNTIF(F$5:F5,$B$2:$B$31)=0,1)),0)),"")
กด Ctrl+Shift ค้างไว้ แล้วกด Enter (ที่ต้องกด 3 ปุ่มเพราะเป็นสูตรอาร์เรย์) -> คัดลอกลงล่างครับ
Re: การค้นหาคำ
Posted: Fri Mar 25, 2016 10:20 am
by PayomKanboon
ลองใช่ Multilple Match ดูครับ
ใส่Running ที่ A2,A3.A43...1,2,3... มาเรื่อย ๆจนครบ
ลากคลุม E6:E50 ใช้สูตรด้านล่างครับ
ที่E5 =IFERROR(SMALL(IF(LEFT($B$2:$B$50,LEN($F$2))=$F$2,$A$2:$A$50),$A$2:$A$50),"")
สูตรเป็น Array กด Ctrl+Shift ค้างไว้ แล้วกด Enter
ที่F6=IFERROR(INDEX($B$2:$B$31,E6),"")
ที่F9=COUNT(E6:E50)
Re: การค้นหาคำ
Posted: Fri Mar 25, 2016 4:30 pm
by shadowpreten
ขอบคุณมากๆเลยค่ะ ขอรบกวนต่ออีกหน่อยนะค่ะ
อยากให้ช่วยอธิบายความหมายของแต่ละสูตรหน่อยค่ะอย่าง IFERROR SMALL ROW คืออะไร ใช้ยังไง และสูตรอ่านยังไงคะ
อย่าง IF คือ ถ้า(......),ถ้าใช่ให้ใส่(....),ถ้าไม่ใช่ให้ใส่(........) ประมาณนี้อ่ะค่ะ แบบว่าอยากมีความรู้ไว้ประดับสมองซะหน่อย
ยังไงก็ขอรบกวนด้วยนะคะ
Re: การค้นหาคำ
Posted: Fri Mar 25, 2016 5:01 pm
by snasui

Iferror เป็นการกำหนดว่าหากผิดพลาดให้แสดงค่าใด (หากไม่ผิดพลาดให้แสดงผลลัพธ์ตามเดิม) เช่น
=Iferror(A2/A1,0) หมายถึง หาก A2/A1 แล้วเป็นค่าผิดพลาดให้แสดงค่า 0 หากไม่ผิดพลาดก็ให้แสดงค่าที่ได้
Small เป็นการแสดงค่าที่น้อยที่สุดในลำดับที่กำหนด นั่นหมายความว่า สามารถหาค่าที่น้อยที่สุดในลำดับใด ๆ ก็ได้ ยกตัวอย่างเช่น
=Small(A1:A10,5) หมายถึงให้หาค่าที่น้อยที่สุดในลำดับที่ 5 ของช่วง A1:A10
Row ใช้แสดงค่าบรรทัด เช่น
=Row(A5) หมายถึงค่าบรรทัดของ A5
หากเขียนเป็น
=Row() โดยไม่ระบุ Range จะหมายถึงค่าบรรทัดของเซลล์ปัจจุบัน
ความหมายของฟังก์ชั่นเหล่านี้ควรจะศึกษาจาก Web ของไมโครซอฟท์จะดีกว่าครับ เช่น Link นี้
ฟังก์ชั่น Excel
Re: การค้นหาคำ
Posted: Sat Mar 26, 2016 8:42 am
by PayomKanboon
ขอบคุณครับ..อาจารย์