Page 1 of 1
คัดลอกข้อมูลแนวตั้งไปเป็นแนวนอนอีกSheet
Posted: Mon Sep 08, 2014 2:36 pm
by kotchaorn
เรียน อาจารย์ค่ะ
รบกวนช่วยหาสูตรexcel ที่จะคัดลอกข้อมูลจากแนวตั้งของ sheetอื่นๆ ไปเก็บไว้อีก sheet แต่เป็นแนวนอนค่ะ สิ่งที่ต้องการมีดังนี้ค่ะ
1. คอลัมภ์ Supplier เป็นชื่อตาม Sheet
2. อยากได้ข้อมูลของ Sheet AA, BB, CC มาไว้ที่ Sheetสรุปค่ะ
ขอบคุณมากค่ะ
กชอร
Re: คัดลอกข้อมูลแนวตั้งไปเป็นแนวนอนอีกSheet
Posted: Mon Sep 08, 2014 7:29 pm
by snasui

ช่วยทำตัวอย่างคำตอบที่ต้องการมาด้วย จะได้เข้าใจตรงกันครับ
Re: คัดลอกข้อมูลแนวตั้งไปเป็นแนวนอนอีกSheet
Posted: Wed Sep 10, 2014 10:12 am
by kotchaorn
snasui wrote:
ช่วยทำตัวอย่างคำตอบที่ต้องการมาด้วย จะได้เข้าใจตรงกันครับ
เรียน อาจารย์ค่ะ
ได้แนบไฟล์ไปใหม่ค่ะ ว่าต้องการคำตอบแบบไหนค่ะ
ขอบคุณค่ะ
กชอร
Re: คัดลอกข้อมูลแนวตั้งไปเป็นแนวนอนอีกSheet
Posted: Wed Sep 10, 2014 5:56 pm
by snasui

ลองตามนี้ครับ
ที่ชีท สรุป
- เซลล์ T3:V3 คีย์ Sheet Name, Count Item, Start Item ตามลำดับ
- เซลล์ T4:T6 คีย์ชื่อชีท
- เซลล์ U4 คีย์สูตร
=COUNT(INDIRECT("'"&T4&"'!A:A"))
Enter > Copy ลงด้านล่างถึง U6
- เซลล์ V4 คีย์สูตร
=SUM(U$4:U4)-U4+1
Enter > Copy ลงด้านล่างถึง V6
- เซลล์ H1:P1 กรอกค่าให้เหมือนกันทุกประการกับชีท AA หรือชีทใด ๆ ในช่วง O4:O12 การกรอกค่าไม่เหมือนกันจะทำให้แสดงข้อมูลผิดพลาด
- เซลล์ A4 คีย์
=IF(ROWS(A$4:A4)>$U$7,"",LOOKUP(ROWS(A$4:A4),$V$4:$V$6,$T$4:$T$6))
Enter > Copy ลงด้านล่าง
- เซลล์ B4 คีย์
=IF(A4="","",INDEX(INDEX(INDIRECT("'"&$A4&"'!B3:G100"),0,COLUMNS($B4:B4)),SMALL(IF(INDIRECT("'"&$A4&"'!B3:B100")<>"",ROW(INDIRECT("'"&$A4&"'!B3:B100"))-MIN(ROW(INDIRECT("'"&$A4&"'!B3:B100")))+1),COUNTIF($A$4:$A4,$A4))))
Ctrl+Shift+Enter > Copy ไปถึง G4 แล้ว Copy ลงด้านล่าง
- เซลล์ H4 คีย์
=IF(G4="","",INDEX(INDIRECT("'"&$A4&"'!P3:P100"),SMALL(IF(INDIRECT("'"&$A4&"'!O3:O100")=H$1,ROW(INDIRECT("'"&$A4&"'!B3:B100"))-MIN(ROW(INDIRECT("'"&$A4&"'!B3:B100")))+1),COUNTIF($A$4:$A4,$A4))))
Ctrl+Shift+Enter > Copy ไปถึง P4 แล้ว Copy ลงด้านล่าง
!
| Note: Ctrl+Shift+Enter หมายถึง
- กรณีคีย์สูตรเอง เมื่อคีย์สูตรแล้ว แทนที่จะกด Enter ให้กดแป้น Ctrl+Shift ค้างไว้แล้วกด Enter เพื่อสร้างเป็นสูตร Array
- กรณี Copy สูตรไปวางให้กดแป้น F2 เพื่อทำการ Edit Cell นั้นก่อน จากนั้นกดแป้น Ctrl+Shift ค้างไว้แล้วกด Enter เพื่อสร้างเป็นสูตร Array
- หากกดแป้นถูกต้องสูตรนั้นจะมีเครื่องหมายปีกกาครอบ เช่น {=YourFormulas(...)} ปีกกานี้คีย์เข้าไปเองไม่ได้ ถ้ายังไม่เห็นปีกกาครอบสูตรแสดงว่ากดแป้นให้รับสูตรไม่ถูกต้อง
- การแก้ไขเปลี่ยนแปลงสูตร Array จะต้องกดแป้นให้รับสูตรด้วย Ctrl+Shift+Enter ทุกครั้ง
|
Re: คัดลอกข้อมูลแนวตั้งไปเป็นแนวนอนอีกSheet
Posted: Fri Sep 12, 2014 12:01 pm
by kotchaorn
อาจารย์ค่ะ
ลองทำดูแล้วค่ะ ได้คำตอบตามที่ต้องการค่ะ ขอบพระคุณมากๆค่ะ
กชอร