Page 1 of 1

ต้องการให้ข้อมูลในแนวนอน เปลี่ยนเป็นข้อมูลในแนวตั้ง

Posted: Wed Dec 29, 2010 11:48 am
by ekkaluk_suk
รบกวนหน่อยครับ หากต้องการให้ข้อมูลใน Sheet ที่ 1 ที่มีลักษณะของข้อมูลเป็นแนวนอน Link ไปที่
Sheet ที่ 2 โดยปรับการแสดงผลเป็นแนวตั้ง ไม่ทราบว่าต้องใช้สูตรอย่างไร

Re: ต้องการให้ข้อมูลในแนวนอน เปลี่ยนเป็นข้อมูลในแนวตั้ง

Posted: Wed Dec 29, 2010 1:13 pm
by snasui
:D ลองตามไฟล์แนบครับ

ที่ชีท 1 เซลล์ C7 คีย์

=SUMPRODUCT(--($B7='2'!$A$3:$A$13),--('1'!C$4='2'!$B$3:$B$13),'2'!$C$3:$C$13)

Enter > Copy ไปทางขวาและลงด้านล่าง

Re: ต้องการให้ข้อมูลในแนวนอน เปลี่ยนเป็นข้อมูลในแนวตั้ง

Posted: Wed Dec 29, 2010 1:23 pm
by ekkaluk_suk
ไม่ใช่ครับ ยังไม่ตรงตามที่ต้องการ คือต้องการให้ Group ชีท 1 ให้แสดงผลลัพธ์
ตามรูปแบบที่แสดงใน ชีท 2 ครับ

อธิบายเพิ่มเติมครับ ตัวเลขที่แสดงในแต่ละ Column คือความเร็วที่สามารถ Run บนเครื่องจักร
แต่ละเครื่องได้ ถ้าช่องไหนไม่มี หมายความว่า ไม่สามารถ Run บนเครื่องจักรนั้นๆ ได้ ตามที่ใช้สูตร
Sumproduct มาจึงยังไม่ตรงกับโจทย์ ที่ต้องการครับ

Re: ต้องการให้ข้อมูลในแนวนอน เปลี่ยนเป็นข้อมูลในแนวตั้ง

Posted: Wed Dec 29, 2010 7:56 pm
by snasui
:D ดูแล้วไม่เข้าใจครับ ช่วยโยงลูกศรให้เห็นด้วยครับว่า ข้อมูลสลับแกนกันอย่างไร อาจจะ Capture ภาพไปไว้ในชีทเดียวกันเพื่อจะได้โยงง่าย ๆ ครับ :mrgreen:

Re: ต้องการให้ข้อมูลในแนวนอน เปลี่ยนเป็นข้อมูลในแนวตั้ง

Posted: Wed Dec 29, 2010 9:19 pm
by ekkaluk_suk
snasui wrote::D ดูแล้วไม่เข้าใจครับ ช่วยโยงลูกศรให้เห็นด้วยครับว่า ข้อมูลสลับแกนกันอย่างไร อาจจะ Capture ภาพไปไว้ในชีทเดียวกันเพื่อจะได้โยงง่าย ๆ ครับ :mrgreen:
เพิ่มเติม ตามรูปภาพครับ วัตถุประสงค์คือต้องการให้ ชีท 1 มาจัดเรียงรูปแบบ Database น่ะครับ

Re: ต้องการให้ข้อมูลในแนวนอน เปลี่ยนเป็นข้อมูลในแนวตั้ง

Posted: Wed Dec 29, 2010 10:19 pm
by snasui
:D ลองตามนี้ครับ

ที่ชีท 1 เซลล์ C2 คีย์

=SUMPRODUCT(--($A3='1'!$B$7:$B$18),INDEX('1'!$C$7:$AK$18,0,MATCH('2'!B3,'1'!$C$4:$AK$4,0)))

Enter > Copy ลงด้านล่าง

ดูตัวอย่างตามไฟล์แนบครับ

Re: ต้องการให้ข้อมูลในแนวนอน เปลี่ยนเป็นข้อมูลในแนวตั้ง

Posted: Sun Jan 02, 2011 9:16 pm
by ekkaluk_suk
snasui wrote::D ลองตามนี้ครับ

ที่ชีท 1 เซลล์ C2 คีย์

=SUMPRODUCT(--($A3='1'!$B$7:$B$18),INDEX('1'!$C$7:$AK$18,0,MATCH('2'!B3,'1'!$C$4:$AK$4,0)))

Enter > Copy ลงด้านล่าง

ดูตัวอย่างตามไฟล์แนบครับ
ในกรณีต้องการให้แสดงผลของ column B2 โดยแสดงผลมาจากชีท 1 (เหมือนกับการแสดงผลที่ C2) สามารถทำได้หรือไม่ครับ

Re: ต้องการให้ข้อมูลในแนวนอน เปลี่ยนเป็นข้อมูลในแนวตั้ง

Posted: Sun Jan 02, 2011 10:30 pm
by snasui
:lol: ได้ครับแต่สูตรจะยากเนื่องจากเป็นสูตร Array

ลองตามไฟล์แนบครับ

1. ที่ชีท 1 เซลล์ AM3 คีย์เพื่อนับว่าแต่ละบรรทัดมีตัวเลขกี่ตัว

=Count(C7:AK7)

Enter > Copy ลงด้านล่าง

2. ที่ชีท 1 เซลล์ AM1 คีย์เพื่อหาว่าจำนวนบรรทัดที่จะมีได้มีกี่บรรทัดเพื่อจะใช้ List Code ในชีท 2

=Sum(AM7:AM18)

Enter

3. ที่ชีท 1 เซลล์ AM2 คีย์สูตรเพื่อหาว่า Code ใดมีจำนวนบรรทัดสูงสุด

=Max(AM7:AM18)

Enter

4. ที่ชีท 2 เซลล์ A3 คีย์สูตรเพื่อ List รายการ Item Code ทั้งหมด

=IF(ROWS(A$3:A3)>'1'!$AM$1,"",INDEX('1'!$B$7:$B$18,SMALL(IF(TRANSPOSE(ROW(INDIRECT("1:"&'1'!$AM$2)))<='1'!$AM$7:$AM$18,ROW('1'!$B$7:$B$18)-ROW('1'!$B$7)+1),ROWS(A$3:A3))))

ctrl+Shift+Enter > Copy ลงด้านล่าง

5. ที่ชีท 2 เซลล์ B3 คีย์สูตรเพื่อ List รายการ MC Code ทั้งหมด

=IF(A3<>"",INDEX('1'!$C$4:$AK$4,SMALL(IF(INDEX('1'!$C$7:$AK$18,MATCH($A3,'1'!$B$7:$B$18,0),0)>0,COLUMN('1'!$C$4:$AK$4)-COLUMN('1'!$C$4)+1),COUNTIF($A$3:$A3,$A3))),"")

ctrl+Shift+Enter > Copy ลงด้านล่าง

5. ที่ชีท 2 เซลล์ C3 คีย์เพื่อหาค่า Speed Qty

=IF(A3="","",SUMPRODUCT(--($A3='1'!$B$7:$B$18),INDEX('1'!$C$7:$AK$18,0,MATCH('2'!B3,'1'!$C$4:$AK$4,0))))

Enter > Copy ลงด้านล่าง

Re: ต้องการให้ข้อมูลในแนวนอน เปลี่ยนเป็นข้อมูลในแนวตั้ง

Posted: Mon Jan 03, 2011 4:35 pm
by ekkaluk_suk
ขอบคุณครับ ตรงตามที่ต้องการแล้วครับ