Page 1 of 1
ขอสูตรจัดข้อมูลจากแนวตั้งไปแนวนอนแบบหลายคอลัมน์
Posted: Fri Aug 08, 2025 11:03 am
by ajsudkedt
หากตั้งการให้ข้อมูลที่อยู่แบบแนวตั้งในชีต input
ดึงไปอยู่แนวนอนในชีต output
โดยยึดเลขในคอลัมน์ T-Code เป็นหลัก
ต้องใช้สูตรอย่างไร ตามไฟล์แนบครับ
ขอบคุณครับ
Re: ขอสูตรจัดข้อมูลจากแนวตั้งไปแนวนอนแบบหลายคอลัมน์
Posted: Fri Aug 08, 2025 5:01 pm
by snasui

ตัวอย่างสูตรตามด้านล่างครับ
เพิ่มคอลัมน์ A เพื่อลดภาระการคำนวณซ้ำ ๆ
- ที่ A2 คีย์สูตรเพื่อแสดงบรรทัดแรกที่พบข้อมูล
=IFERROR(AGGREGATE(15,6,ROW(input!$B$2:$B$11)/(0<FREQUENCY(MATCH(input!$B$2:$B$11,input!$B$2:$B$11,0),ROW(input!$B$2:$B$11)-ROW(input!$B$2)+1)),ROWS(A$2:A2)),"")
Enter > Copy ลงด้านล่าง
- ที่ B2 คีย์สูตรเพื่อให้ค่าลำดับ
=IF(A2<>"",ROWS(B$2:B2),"")
Enter > Copy ลงด้านล่าง
- ที่ C2 คีย์สูตรเพื่อแสดงข้อมูลชุดแรก
=IF($A2="","",INDEX(input!B:B,$A2)&"")
Enter > Copy ไปด้านขวาและลงด้านล่าง
- ที่ L2 คีย์สูตรเพื่อแสดงข้อมูลที่เกี่ยวข้อง
=IFERROR(INDEX(input!B:B,AGGREGATE(15,6,ROW(input!$B$2:$B$11)/(input!$B$2:$B$11=--$C2),COUNTIFS($C$1:L$1,L$1)))&"","")
Enter > Copy ไปด้านขวาและลงด้านล่าง
Re: ขอสูตรจัดข้อมูลจากแนวตั้งไปแนวนอนแบบหลายคอลัมน์
Posted: Sat Aug 09, 2025 6:28 am
by ajsudkedt
snasui wrote: Fri Aug 08, 2025 5:01 pm

ตัวอย่างสูตรตามด้านล่างครับ
เพิ่มคอลัมน์ A เพื่อลดภาระการคำนวณซ้ำ ๆ
- ที่ A2 คีย์สูตรเพื่อแสดงบรรทัดแรกที่พบข้อมูล
=IFERROR(AGGREGATE(15,6,ROW(input!$B$2:$B$11)/(0<FREQUENCY(MATCH(input!$B$2:$B$11,input!$B$2:$B$11,0),ROW(input!$B$2:$B$11)-ROW(input!$B$2)+1)),ROWS(A$2:A2)),"")
Enter > Copy ลงด้านล่าง
- ที่ B2 คีย์สูตรเพื่อให้ค่าลำดับ
=IF(A2<>"",ROWS(B$2:B2),"")
Enter > Copy ลงด้านล่าง
- ที่ C2 คีย์สูตรเพื่อแสดงข้อมูลชุดแรก
=IF($A2="","",INDEX(input!B:B,$A2)&"")
Enter > Copy ไปด้านขวาและลงด้านล่าง
- ที่ L2 คีย์สูตรเพื่อแสดงข้อมูลที่เกี่ยวข้อง
=IFERROR(INDEX(input!B:B,AGGREGATE(15,6,ROW(input!$B$2:$B$11)/(input!$B$2:$B$11=--$C2),COUNTIFS($C$1:L$1,L$1)))&"","")
Enter > Copy ไปด้านขวาและลงด้านล่าง
ใช้สูตรที่ให้มาแล้ว ยังไม่ได้ผลตามที่ต้องการครับ
ได้ผลตามไฟล์แนบครับ
Re: ขอสูตรจัดข้อมูลจากแนวตั้งไปแนวนอนแบบหลายคอลัมน์
Posted: Sat Aug 09, 2025 6:32 am
by snasui

ที่ไม่ได้คำตอบเพราะ สูตรที่ C2, L2 ยังไม่ได้ Copy ไปด้านขวา
สูตรทั้งหมด Enter อย่างเดียวไม่ต้อง Ctrl+Shift+Enter ครับ
Re: ขอสูตรจัดข้อมูลจากแนวตั้งไปแนวนอนแบบหลายคอลัมน์
Posted: Sun Aug 10, 2025 12:08 pm
by snasui
snasui wrote: Fri Aug 08, 2025 5:01 pm
ที่ L2 คีย์สูตรเพื่อแสดงข้อมูลที่เกี่ยวข้อง
=IFERROR(INDEX(input!B:B,AGGREGATE(15,6,ROW(input!$B$2:$B$11)/(input!$B$2:$B$11=--$C2),COUNTIFS($C$1:L$1,L$1)))&"","")
Enter > Copy ไปด้านขวาและลงด้านล่าง

แก้เซลล์อ้างอิงใหม่เป็น K2 และปรับสูตรใหม่เป็นด้านล่างครับ
=IFERROR(INDEX(INDEX(input!$B:$J,0,MATCH(K$1,input!$B$1:$J$1,0)),AGGREGATE(15,6,ROW(input!$B$2:$B$11)/(input!$B$2:$B$11=--$C2),COUNTIFS($B$1:K$1,K$1)))&"","")
Enter > Copy ไปด้านขวาและลงด้านล่าง
Re: ขอสูตรจัดข้อมูลจากแนวตั้งไปแนวนอนแบบหลายคอลัมน์
Posted: Tue Aug 12, 2025 4:33 pm
by ajsudkedt
snasui wrote: Sat Aug 09, 2025 6:32 am

ที่ไม่ได้คำตอบเพราะ สูตรที่ C2, L2 ยังไม่ได้ Copy ไปด้านขวา
สูตรทั้งหมด Enter อย่างเดียวไม่ต้อง Ctrl+Shift+Enter ครับ
สูตรที่ให้มา ได้ผลดั่งที่ต้องการเลยครับ
กราบขอบพระคุณมากครับ