Page 1 of 1
รวมข้อมูลในเซลล์หลายคอลัมน์ให้อยู่ในคอลัมน์เดียว
Posted: Wed Sep 11, 2013 7:49 am
by naung
อยากทราบวิธีเขียนสูตรรวมไฟล์จากหลายคอลัมน์ให้อยู่ในคอลัมน์เดียว ตัวอย่างจากไฟล์ที่แนบ ที่ผมจะใช้ทำงานจริง เคยสอบถามมาแล้วก่อนหน้านี้ แต่ไม่ตรงจากที่จะทำงานจริง จึงขอรบกวนอีกครั้งครับ
Re: รวมข้อมูลในเซลล์หลายคอลัมน์ให้อยู่ในคอลัมน์เดียว
Posted: Wed Sep 11, 2013 11:20 am
by snasui

ลองตามนี้ครับ
E31 คีย์สูตร
=SUMPRODUCT(($B$4:$B$23=$B31)*(LEFT($E$3:$M$3)=E$30)*($E$4:$M$23))
Enter > Copy ไปด้านขวาและลงด้านล่าง
Re: รวมข้อมูลในเซลล์หลายคอลัมน์ให้อยู่ในคอลัมน์เดียว
Posted: Wed Sep 11, 2013 11:51 am
by naung
ผมลองคีย์สูตรแล้วครับ ยังไม่สามารถคำนวณได้ ตามไฟล์ที่แนบครับ ขอแก้ไขให้ด้วยครับ
Re: รวมข้อมูลในเซลล์หลายคอลัมน์ให้อยู่ในคอลัมน์เดียว
Posted: Wed Sep 11, 2013 12:23 pm
by bank9597

แถมอีกวิธีครับ (ขั้นตอนมากหน่อย)
ที่ O4 คีย์ =MAX(O3)-1 คัดลอกลงมา
ที่ N4 คีย์ =LEFT(OFFSET($E4:$M4,MAX(O3)-1,MATCH(1,IF($E4:$M4<>"",1),0)-1),1) กด Ctrl+Shift+Enter คัดลอกลงมา
ที่ P4 คีย์ =LOOKUP(CHAR(255),$E4:$M4) คัดลอกลงมา
ที่ E31 คีย์ =IFERROR(INDEX($P$4:$P$23,MATCH(1,IF($B$4:$B$23=$B31,IF($N$4:$N$23=E$30,1)),0)),"") คัดลอกไปทางขวามือ แล้วลงล่างพร้อมกันครับ
หากข้อมูลในตารางเป็นตัวเลข ไม่ใช "X" ก็สามารถใช้สูตร sumproduct,sum(if ได้เลยครับ
และหากว่าข้อมูลที่คีย์ลงไปใน 1 บรรทัด มีมากว่า 1 ค่า เช่น คีย์ X ลงไป 2 ที่ ในบรรทัดเดียวกัน การแสดงค่าก็จะต้องมีการปรับสูตรกันต่อไปครับ
Re: รวมข้อมูลในเซลล์หลายคอลัมน์ให้อยู่ในคอลัมน์เดียว
Posted: Wed Sep 11, 2013 1:42 pm
by naung
ขอบคุณมากครับ ใช้งานได้ตามที่ต้องการ
Re: รวมข้อมูลในเซลล์หลายคอลัมน์ให้อยู่ในคอลัมน์เดียว
Posted: Wed Sep 11, 2013 2:02 pm
by snasui
naung wrote:ผมลองคีย์สูตรแล้วครับ ยังไม่สามารถคำนวณได้ ตามไฟล์ที่แนบครับ ขอแก้ไขให้ด้วยครับ

ที่ไม่ได้เพราะผมเข้าใจว่าเป็นการรวม และเข้าใจว่า x คือตัวเลขที่ต้องการนำมารวมกัน
หากต้องกรนำค่า x มาจัดเรียงใหม่ตามตัวอย่างสามารถใช้สูตรที่เซลล์ E31 ตามด้านล่างครับ
=IFERROR(INDEX(INDEX($E$4:$M$23,MATCH($B31,$B$4:$B$23,0),0),MATCH(1,IF(INDEX($E$4:$M$23,MATCH($B31,$B$4:$B$23,0),0)<>"",IF(LEFT($E$3:$M$3)=E$30,1)),0)),"")
Ctrl+Shift+Enter > Copy ไปทางด้านขวาและลงด้านล่าง
!
| Note: Ctrl+Shift+Enter หมายถึงเมื่อคีย์สูตรแล้ว แทนที่จะกด Enter ให้กดแป้น Ctrl+Shift ค้างไว้แล้วกด Enter เพื่อสร้างเป็นสูตร Array หากกดแป้นถูกต้องสูตรนั้นจะมีเครื่องหมายปีกกาครอบ เช่น {=YourFormulas(...)} ปีกกานี้คีย์เข้าไปเองไม่ได้ ถ้ายังไม่เห็นปีกกาครอบสูตรแสดงว่ากดแป้นให้รับสูตรไม่ถูกต้อง |
Re: รวมข้อมูลในเซลล์หลายคอลัมน์ให้อยู่ในคอลัมน์เดียว
Posted: Wed Sep 11, 2013 7:32 pm
by ZEROV
E31=IF(MID("AAABABCCD",MATCH("x",$E4:$M4,0),1)=E$30,"x","")
Copy สูตรไปทั้งตาราง
Re: รวมข้อมูลในเซลล์หลายคอลัมน์ให้อยู่ในคอลัมน์เดียว
Posted: Wed Sep 11, 2013 8:15 pm
by bank9597
ZEROV wrote:E31=IF(MID("AAABABCCD",MATCH("x",$E4:$M4,0),1)=E$30,"x","")
Copy สูตรไปทั้งตาราง

Re: รวมข้อมูลในเซลล์หลายคอลัมน์ให้อยู่ในคอลัมน์เดียว
Posted: Thu Sep 12, 2013 8:31 am
by naung
ขอขอบคุณครับที่ให้ความรู้ ทำให้นำไปปรับใช้ได้