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] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
Totem
Silver
Posts: 650 Joined: Fri Oct 11, 2013 7:52 pm
Excel Ver: 365 , 2007
#1
Post
by Totem » Thu Oct 11, 2018 4:16 pm
เรียนอาจารย์และเพื่อนสมาชิก
ขอถามปัญหาปรับสูตรตามเงื่อนไข ดังนี้
1.ต้องการเพิ่มเงื่อนไขสูตรว่าถ้ามีจำนวนภายใน (คอลัมน์ B) หรือจำนวนภายนอก (คอลัมน์ C)
หรือมีจำนวนทั้งสองคอลัมน์ ให้แสดงรายการ ตามตัวอย่าง ตารางรหัส A , B
2. ต้องการให้รหัสต่างๆเรียงต่อกันไม่ต้องแยกตาราง ดังตัวอย่างนำรายการต่างๆมารวมกันเงื่อนไข
ขอบคุณครับ
นำมาเรียงต่อกัน.xlsx
You do not have the required permissions to view the files attached to this post.
Supachok
Gold
Posts: 1014 Joined: Wed Jun 18, 2014 11:11 am
Excel Ver: 2013
#2
Post
by Supachok » Thu Oct 11, 2018 4:36 pm
้H12
=INDEX(A$2:A$19,SMALL(IF($B$2:$B$19&$C$2:$C$19<>"",ROW($B$2:$B$19)-ROW($B$2)+1,""),ROW(A1)))
Copy down
K12
=INDEX(D$2:D$19,SMALL(IF($B$2:$B$19&$C$2:$C$19<>"",ROW($B$2:$B$19)-ROW($B$2)+1,""),ROW(D1)))
Copy down + right.
กดสูตร array ด้วย
Totem
Silver
Posts: 650 Joined: Fri Oct 11, 2013 7:52 pm
Excel Ver: 365 , 2007
#3
Post
by Totem » Thu Oct 11, 2018 5:30 pm
Supachok wrote: Thu Oct 11, 2018 4:36 pm
้H12
=INDEX(A$2:A$19,SMALL(IF($B$2:$B$19&$C$2:$C$19<>"",ROW($B$2:$B$19)-ROW($B$2)+1,""),ROW(A1)))
Copy down
K12
=INDEX(D$2:D$19,SMALL(IF($B$2:$B$19&$C$2:$C$19<>"",ROW($B$2:$B$19)-ROW($B$2)+1,""),ROW(D1)))
Copy down + right.
กดสูตร array ด้วย
ถ้าจัดเรียงรหัสอยู่ในกลุ่มเดียวกันต่อกันไปในคอลัมน์ H ครับ ขอบคุณครับ
Totem
Silver
Posts: 650 Joined: Fri Oct 11, 2013 7:52 pm
Excel Ver: 365 , 2007
#4
Post
by Totem » Thu Oct 11, 2018 8:18 pm
Totem wrote: Thu Oct 11, 2018 5:30 pm
Supachok wrote: Thu Oct 11, 2018 4:36 pm
้H12
=INDEX(A$2:A$19,SMALL(IF($B$2:$B$19&$C$2:$C$19<>"",ROW($B$2:$B$19)-ROW($B$2)+1,""),ROW(A1)))
Copy down
K12
=INDEX(D$2:D$19,SMALL(IF($B$2:$B$19&$C$2:$C$19<>"",ROW($B$2:$B$19)-ROW($B$2)+1,""),ROW(D1)))
Copy down + right.
กดสูตร array ด้วย
ต้องการเพิ่มเติมคือให้จัดเรียงรหัสอยู่ในกลุ่มเดียวกันเรียงต่อกันไปในคอลัมน์ H ครับ ขอบคุณครับ
snasui
Site Admin
Posts: 31257 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#5
Post
by snasui » Thu Oct 11, 2018 8:33 pm
เป็นคำถามหรือเป็นคำบอกเล่าครับ
กรณีเป็นคำถาม กรุณาเขียนคำถามมาใหม่ ยกตัวอย่างค่าที่ต้องการมาในไฟล์แนบด้วยจะได้เข้าใจตรงกันครับ
Bo_ry
Gold
Posts: 1245 Joined: Sun Aug 12, 2018 12:11 am
Excel Ver: MS 365
Contact:
#6
Post
by Bo_ry » Thu Oct 11, 2018 9:53 pm
H12 ลากไป K12 ลากลง
=IFERROR(INDEX($A$2:$F$19,MATCH(AGGREGATE(15,6,(COUNTIF($A$2:$A$19,"<"&$A$2:$A$19)+ROW($A$2:$A$19)/100)/($B$2:$B$19<>""),ROWS(H$12:H12)),INDEX(COUNTIF($A$2:$A$19,"<"&$A$2:$A$19)+ROW($A$2:$A$19)/100,),),COLUMNS($H12:H12)+(COLUMNS($H12:H12)>1)*2),"")
Totem
Silver
Posts: 650 Joined: Fri Oct 11, 2013 7:52 pm
Excel Ver: 365 , 2007
#7
Post
by Totem » Fri Oct 12, 2018 9:00 am
snasui wrote: Thu Oct 11, 2018 8:33 pm
เป็นคำถามหรือเป็นคำบอกเล่าครับ
กรณีเป็นคำถาม กรุณาเขียนคำถามมาใหม่ ยกตัวอย่างค่าที่ต้องการมาในไฟล์แนบด้วยจะได้เข้าใจตรงกันครับ
เป็นคำถามครับ
ขอให้ปรับสูตรการจัดเรียงรหัสอยู่ในกลุ่มเดียวกันและเรียงต่อกันไปในคอลัมน์ H12 ถึง H15 ครับ
ขอบคุณครับ
นำมาเรียงต่อกันของชื่อรหัส.xlsx
You do not have the required permissions to view the files attached to this post.
Totem
Silver
Posts: 650 Joined: Fri Oct 11, 2013 7:52 pm
Excel Ver: 365 , 2007
#8
Post
by Totem » Fri Oct 12, 2018 9:28 am
Bo_ry wrote: Thu Oct 11, 2018 9:53 pm
H12 ลากไป K12 ลากลง
=IFERROR(INDEX($A$2:$F$19,MATCH(AGGREGATE(15,6,(COUNTIF($A$2:$A$19,"<"&$A$2:$A$19)+ROW($A$2:$A$19)/100)/($B$2:$B$19<>""),ROWS(H$12:H12)),INDEX(COUNTIF($A$2:$A$19,"<"&$A$2:$A$19)+ROW($A$2:$A$19)/100,),),COLUMNS($H12:H12)+(COLUMNS($H12:H12)>1)*2),"")
สูตรยังได้ไม่ครอบคลุมตรงที่ มีเงื่อนไขสูตรว่าถ้ามีจำนวนภายใน (คอลัมน์ B) หรือจำนวนภายนอก (คอลัมน์ C) หรือทั้งจำนวนภายใน (คอลัมน์ B) และจำนวนภายนอก (คอลัมน์ C) ครับ
ตามตัวอย่างนี้ครับ
นำมาเรียงต่อกันของชื่อรหัสเพิ่ม.xlsx
You do not have the required permissions to view the files attached to this post.
Supachok
Gold
Posts: 1014 Joined: Wed Jun 18, 2014 11:11 am
Excel Ver: 2013
#9
Post
by Supachok » Fri Oct 12, 2018 9:50 am
อนุญาติปรับให้ครับ
column B , C
=IFERROR(INDEX($A$2:$F$19,MATCH(AGGREGATE(15,6,(COUNTIF($A$2:$A$19,"<"&$A$2:$A$19)+ROW($A$2:$A$19)/100)/($B$2:$B$19&$C$2:$C$19<>""),ROWS(H$12:H12)),INDEX(COUNTIF($A$2:$A$19,"<"&$A$2:$A$19)+ROW($A$2:$A$19)/100,),),COLUMNS($H12:H12)+(COLUMNS($H12:H12)>1)*2),"")
Totem
Silver
Posts: 650 Joined: Fri Oct 11, 2013 7:52 pm
Excel Ver: 365 , 2007
#10
Post
by Totem » Fri Oct 12, 2018 10:45 am
Supachok wrote: Fri Oct 12, 2018 9:50 am
อนุญาติปรับให้ครับ
column B , C
=IFERROR(INDEX($A$2:$F$19,MATCH(AGGREGATE(15,6,(COUNTIF($A$2:$A$19,"<"&$A$2:$A$19)+ROW($A$2:$A$19)/100)/($B$2:$B$19&$C$2:$C$19<>""),ROWS(H$12:H12)),INDEX(COUNTIF($A$2:$A$19,"<"&$A$2:$A$19)+ROW($A$2:$A$19)/100,),),COLUMNS($H12:H12)+(COLUMNS($H12:H12)>1)*2),"")
ขอบคุณครับได้ตามที่ต้องการครับ
Totem
Silver
Posts: 650 Joined: Fri Oct 11, 2013 7:52 pm
Excel Ver: 365 , 2007
#11
Post
by Totem » Sun Oct 14, 2018 6:40 am
Supachok wrote: Fri Oct 12, 2018 9:50 am
อนุญาติปรับให้ครับ
column B , C
=IFERROR(INDEX($A$2:$F$19,MATCH(AGGREGATE(15,6,(COUNTIF($A$2:$A$19,"<"&$A$2:$A$19)+ROW($A$2:$A$19)/100)/($B$2:$B$19&$C$2:$C$19<>""),ROWS(H$12:H12)),INDEX(COUNTIF($A$2:$A$19,"<"&$A$2:$A$19)+ROW($A$2:$A$19)/100,),),COLUMNS($H12:H12)+(COLUMNS($H12:H12)>1)*2),"")
เพื่อนๆสมาชิก สูตร AGGREGATE นี้ไม่สามารถทำงานในโปรแกรมexcel เวอร์ชั่นเก่าได้ ช่วยปรับสูตรใหม่ให้ทีครับ ขอบคุณครับ
puriwutpokin
Guru
Posts: 3801 Joined: Fri Jan 04, 2013 9:49 pm
Location: Bangkok
Excel Ver: MS.365
#12
Post
by puriwutpokin » Sun Oct 14, 2018 9:27 am
ปรับเป็น
=IFERROR(INDEX($A$2:$F$19,MATCH(SMALL(IF($B$2:$B$19&$C$2:$C$19<>"",COUNTIF($A$2:$A$19,"<"&$A$2:$A$19)+ROW($A$2:$A$19)/100),ROWS(H$12:H12)),INDEX(COUNTIF($A$2:$A$19,"<"&$A$2:$A$19)+ROW($A$2:$A$19)/100,),),COLUMNS($H12:H12)+(COLUMNS($H12:H12)>1)*2),"") กด Ctrl+Shift+Enter คัดลอกไปทั่วตารางครับ
Totem
Silver
Posts: 650 Joined: Fri Oct 11, 2013 7:52 pm
Excel Ver: 365 , 2007
#13
Post
by Totem » Tue Oct 16, 2018 8:47 am
puriwutpokin wrote: Sun Oct 14, 2018 9:27 am
ปรับเป็น
=IFERROR(INDEX($A$2:$F$19,MATCH(SMALL(IF($B$2:$B$19&$C$2:$C$19<>"",COUNTIF($A$2:$A$19,"<"&$A$2:$A$19)+ROW($A$2:$A$19)/100),ROWS(H$12:H12)),INDEX(COUNTIF($A$2:$A$19,"<"&$A$2:$A$19)+ROW($A$2:$A$19)/100,),),COLUMNS($H12:H12)+(COLUMNS($H12:H12)>1)*2),"") กด Ctrl+Shift+Enter คัดลอกไปทั่วตารางครับ
ขอบคุณครับ