Page 1 of 1
การแทนค่ารายการต่างๆ เป็นตัวเลข
Posted: Tue Nov 03, 2020 5:31 pm
by Totem

เรียนอาจารย์และเพื่อนสมาชิกทุกท่านครับ
ต้องการ การแทนค่ารายการต่างๆ เป็นตัวเลข ขออธิบายดังนี้
ในคอลัมน์ A และ B เป็นการดึงข้อมูลออกมา
ในคอลัมน์ D และ E เป็นกำหนดรายการว่ารายการต่าง ๆ แทนค่าเป็นตัวเลขตามที่กำหนดไว้
ต้องการว่าในคอลัมน์ G ถึง P เป็นจำนวนคนทั้งหมด ให้แทนค่าเป็นตัวเลขที่กำหนดไว้ตามคอลัมน์ E
เช่น ในคอลัมน์ G คนที่ 1 มีข้อมูลที่อยู่ในคอลัมน์ A จำนวน 3 คน เป็นรายการ aa , dd , ff
ซึ่งตรงกับคอลัมน์ D ให้ใส่ค่าเป็นตัวเลข เป็น g2 = 1 , g3 = 4 , g4 = 5 เป็นต้น
หมายเหตุ ข้อมูลในคอลัมน์ A และ B ไม่ได้จัดเรียงอย่างเป็นระเบียบ คนจะสลับกันไป
ขอบคุณครับ
การแทนค่ารายการต่างๆ เป็นตัวเลข.xlsx
Re: การแทนค่ารายการต่างๆ เป็นตัวเลข
Posted: Tue Nov 03, 2020 6:07 pm
by Bo_ry
G2
=IFERROR(VLOOKUP(INDEX($B$1:$B$20,AGGREGATE(15,6,ROW($A$2:$A$20)/($A$1&$A$2:$A$20=G$1),ROWS(G$2:G2))),$D$2:$E$11,2,),"")
Re: การแทนค่ารายการต่างๆ เป็นตัวเลข
Posted: Thu Nov 05, 2020 6:05 pm
by Totem

ขอบคุณครับได้ตามต้องการ
Re: การแทนค่ารายการต่างๆ เป็นตัวเลข
Posted: Thu Nov 05, 2020 6:10 pm
by Totem

มีกรณีที่มีเครื่องหมาย , คั่น ในรายการ
ต้องการ การแทนค่ารายการต่างๆ เป็นตัวเลข ดังนี้
ในคอลัมน์ A และ B เป็นการดึงข้อมูลออกมา ในคอลัมน์ B มี , คั่นระหว่างรายการแต่ละรายการ
ในคอลัมน์ D และ E เป็นกำหนดรายการว่ารายการต่าง ๆ แทนค่าเป็นตัวเลขตามที่กำหนดไว้
ต้องการว่าในคอลัมน์ G ถึง P เป็นจำนวนคนทั้งหมด ให้แทนค่าเป็นตัวเลขที่กำหนดไว้ตามคอลัมน์ E
เช่น ในคอลัมน์ G คนที่ 1 มีข้อมูลที่อยู่ในคอลัมน์ A จำนวน 1 คน เป็นรายการ aa, vv, ff, bbb
ซึ่งตรงกับคอลัมน์ D ให้ใส่ค่าเป็นตัวเลข เป็น g2 = 1 , g3 = 3 , g4 = 5 , g8 = 5 เป็นต้น
หมายเหตุ ข้อมูลในคอลัมน์ A และ B ไม่ได้จัดเรียงอย่างเป็นระเบียบ คนจะสลับกันไป และ
ในคอลัมน์ B , D ชื่อรายการเป็นการยกตัวอย่างอาจมีความหมายและข้อความยาวหรือสั้นกว่าตัวอย่าง ซึ่งเป็นไปตามที่เรากำหนดเอง
ขอบคุณครับ
การแทนค่ารายการต่างๆ เป็นตัวเลข.xlsx
Re: การแทนค่ารายการต่างๆ เป็นตัวเลข
Posted: Thu Nov 05, 2020 7:28 pm
by Bo_ry
G2
=VLOOKUP(TRIM(MID(SUBSTITUTE(VLOOKUP(--MID(G$1,6,2),$A$2:$B$11,2,),",",REPT(" ",50)),ROWS(G$2:G2)*50-49,50)),$D$2:$E$11,2,)
Re: การแทนค่ารายการต่างๆ เป็นตัวเลข
Posted: Mon Nov 09, 2020 5:17 pm
by Totem

ขอบคุณครับได้ตามต้องการครับ
Re: การแทนค่ารายการต่างๆ เป็นตัวเลข
Posted: Mon Jan 25, 2021 5:28 pm
by Totem
Bo_ry wrote: Tue Nov 03, 2020 6:07 pm
G2
=IFERROR(VLOOKUP(INDEX($B$1:$B$20,AGGREGATE(15,6,ROW($A$2:$A$20)/($A$1&$A$2:$A$20=G$1),ROWS(G$2:G2))),$D$2:$E$11,2,),"")

จากสูตรถ้าจะนำไปใช้กับ office เก่า จะปรับสูตรอย่างไรครับ ขอบคุณครับ
Re: การแทนค่ารายการต่างๆ เป็นตัวเลข
Posted: Mon Jan 25, 2021 5:41 pm
by Bo_ry
เก่าแค่ไหน
Re: การแทนค่ารายการต่างๆ เป็นตัวเลข
Posted: Mon Jan 25, 2021 5:45 pm
by Totem

ต่ำกว่า เวอร์ชัน 2010 ไม่มีสูตร AGGREGATE
Re: การแทนค่ารายการต่างๆ เป็นตัวเลข
Posted: Mon Jan 25, 2021 6:11 pm
by Bo_ry
ต่ำกว่า เวอร์ชัน 2007 ไม่มีสูตร IFERROR
Re: การแทนค่ารายการต่างๆ เป็นตัวเลข
Posted: Mon Jan 25, 2021 6:35 pm
by Totem
Bo_ry wrote: Mon Jan 25, 2021 6:11 pm
ต่ำกว่า เวอร์ชัน 2007 ไม่มีสูตร IFERROR

ครับ เป็น เวอร์ชั่น 2007
Re: การแทนค่ารายการต่างๆ เป็นตัวเลข
Posted: Mon Jan 25, 2021 6:45 pm
by Bo_ry
G2
=IFERROR(VLOOKUP(INDEX($B$1:$B$20,SMALL(IF($A$1&$A$2:$A$20=G$1,ROW($A$2:$A$20)),ROWS(G$2:G2))),$D$2:$E$11,2,),"")
Ctrl+Shift+Enter
Re: การแทนค่ารายการต่างๆ เป็นตัวเลข
Posted: Mon Jan 25, 2021 6:58 pm
by snasui
Totem wrote: Mon Jan 25, 2021 6:35 pm
Bo_ry wrote: Mon Jan 25, 2021 6:11 pm
ต่ำกว่า เวอร์ชัน 2007 ไม่มีสูตร IFERROR

ครับ เป็น เวอร์ชั่น 2007

กรุณา Update Profile โดยระบุ Version ของ Excel ตาม Link นี้ด้วยครับ
https://snasui.com/viewtopic.php?f=6&p=103177#p103177
Re: การแทนค่ารายการต่างๆ เป็นตัวเลข
Posted: Tue Jan 26, 2021 2:17 pm
by linzhengli
ถ้าเป็น 2003 สูตรเช่นไรครับ
Re: การแทนค่ารายการต่างๆ เป็นตัวเลข
Posted: Tue Jan 26, 2021 5:34 pm
by Bo_ry
G2
=IF(ROWS(G$2:G2)>COUNTIFS($A$2:$A$20,MID(G$1,6,2)),"",VLOOKUP(INDEX($B$1:$B$20,SMALL(IF($A$1&$A$2:$A$20=G$1,ROW($A$2:$A$20)),ROWS(G$2:G2))),$D$2:$E$11,2,))
Ctrl+Shift+Enter
Re: การแทนค่ารายการต่างๆ เป็นตัวเลข
Posted: Wed Jan 27, 2021 8:32 am
by snasui
linzhengli wrote: Tue Jan 26, 2021 2:17 pm
ถ้าเป็น 2003 สูตรเช่นไรครับ
Bo_ry wrote: Tue Jan 26, 2021 5:34 pm
G2
=IF(ROWS(G$2:G2)>COUNTIF
S($A$2:$A$20,MID(G$1,6,2)),"",VLOOKUP(INDEX($B$1:$B$20,SMALL(IF($A$1&$A$2:$A$20=G$1,ROW($A$2:$A$20)),ROWS(G$2:G2))),$D$2:$E$11,2,))
Ctrl+Shift+Enter

คุณ Bo_ry ลืมลบ S ที่ Countifs ทิ้งไปครับ
กรณีใช้กับ 2003 เปลี่ยน Countif
s เป็น Countif อีกตำแหน่งครับ
Re: การแทนค่ารายการต่างๆ เป็นตัวเลข
Posted: Wed Jan 27, 2021 2:13 pm
by linzhengli
ขอบคุณครับ
Re: การแทนค่ารายการต่างๆ เป็นตัวเลข
Posted: Fri Jan 29, 2021 4:04 pm
by Totem
Bo_ry wrote: Mon Jan 25, 2021 6:45 pm
G2
=IFERROR(VLOOKUP(INDEX($B$1:$B$20,SMALL(IF($A$1&$A$2:$A$20=G$1,ROW($A$2:$A$20)),ROWS(G$2:G2))),$D$2:$E$11,2,),"")
Ctrl+Shift+Enter

ขอบคุณครับ ได้ตามต้องการ
Re: การแทนค่ารายการต่างๆ เป็นตัวเลข
Posted: Fri Jan 29, 2021 4:05 pm
by Totem
ี

Update Profile เรียบร้อยครับ