snasui.com ยินดีต้อนรับ
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ ระบุ Version ของ Excel
ฟอรัมถาม-ตอบปัญหาการใช้งานสูตรและฟังก์ชัน Excel
Forum rules
ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
pijitza
Member
Posts: 16 Joined: Fri Oct 16, 2015 4:51 pm
#21
Post
by pijitza » Wed Nov 11, 2015 5:01 pm
เบื้องต้นลองใส่สูตร =IFERROR(INDEX($D$3:$D$21,SMALL(IF(LEFT($D$3:$D$21,6)=$L$1,ROW($D$3:$D$21)-ROW($D$3)+1),ROWS(M$1:M1))),"")
ในช่องเซลล์ M2 แล้วครับ แต่ไม่แสดงผลคำตอบครับ
snasui
Site Admin
Posts: 31258 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#22
Post
by snasui » Wed Nov 11, 2015 7:28 pm
หากไม่ได้คำตอบให้แนบไฟล์นั้นมาด้วยเสมอจะได้ช่วยตรวจสอบได้ครับ
pijitza
Member
Posts: 16 Joined: Fri Oct 16, 2015 4:51 pm
#23
Post
by pijitza » Wed Nov 11, 2015 7:54 pm
ขออภัยครับ ไฟล์แนบครับ
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31258 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#24
Post
by snasui » Wed Nov 11, 2015 8:06 pm
ปรับสูตรที่ M2 เป็นตามด้านล่างครับ
=IFERROR(INDEX($D$3:$D$21,SMALL(IF(LEFT($D$3:$D$21,6)+0=$L$1,ROW($D$3:$D$21)-ROW($D$3)+1),ROWS(M$1:M1))),"")
Ctrl+Shift+Enter > Copy ลงด้านล่าง
pijitza
Member
Posts: 16 Joined: Fri Oct 16, 2015 4:51 pm
#25
Post
by pijitza » Thu Nov 12, 2015 11:06 am
เบื้องต้นได้นำสูตร =IFERROR(INDEX($D$3:$D$21,SMALL(IF(LEFT($D$3:$D$21,6)+0=$L$1,ROW($D$3:$D$21)-ROW($D$3)+1),ROWS(M$1:M1))),"") ไปใช้งาน คอลัมน์ M และ N สามารถแสดงคำตอบได้แล้วครับ
แต่คอลัมน์ L ยังไม่สามารถแสดงคำตอบ ที่ดึงจากแถว J ได้ครับ (ในไฟล์แนบ ได้ระบายพื้นหลังสีเหลืองไว้ครับ)
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31258 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#26
Post
by snasui » Thu Nov 12, 2015 6:21 pm
snasui wrote: ทำตามด้านล่างครับ
เซลล์ L1 คีย์สูตร
=LEFT(B1,6)
Enter หากคีย์แล้วไม่แสดงผลลัพธ์ให้เปลี่ยน Format เป็น General เสียก่อน จากนั้น Activate สูตรใหม่โดยกดแป้น F2 แล้ว Enter
เซลล์ M2 คีย์สูตร
=IFERROR(INDEX($D$3:$D$21 ,SMALL(IF(LEFT($D$3:$D$21,6)=$L$1,ROW($D$3:$D$21)-ROW($D$3)+1),ROWS(M$2:M2))),"")
Ctrl+Shift+Enter > Copy ลงด้านล่าง ปรับช่วงที่ระบายไว้ในสูตรเพื่อใช้กับคอลัมน์ที่เหลือ (L, N)
ลองทบทวนดูอีกรอบจากโพสต์ที่ผมเคยตอบไว้ว่าผมแจ้งให้เปลี่ยนเฉพาะค่าใด สูตรที่ยกมาข้างบนนี้แค่เติม
+0 เข้าไปก็สามารถใช้ได้แล้วครับ
pijitza
Member
Posts: 16 Joined: Fri Oct 16, 2015 4:51 pm
#27
Post
by pijitza » Fri Nov 13, 2015 9:55 am
ขอบพระคุณทุกท่านสำหรับคำแนะนำดีๆครับ
เบื้องต้นผมลองเปลี่ยนตัวอักษรสีแดงในสูตร สามารถใช้งานได้ตามปกติครับ
=IFERROR(INDEX($J $3:$J $21,SMALL(IF(LEFT($D$3:$D$21,6)+0=$L$1,ROW($D$3:$D$21)-ROW($D$3)+1),ROWS(L $1:L 1))),"")
You do not have the required permissions to view the files attached to this post.