Page 1 of 1
อยากให้ข้อมูลไปอยู่ในแต่ละ Sheet
Posted: Mon Jul 11, 2022 2:56 pm
by wisitsakbenz
เรียน อาจารย์ครับ
จากข้อมูลใน Sheet "Data" อยากให้ข้อมูลไปอยู่ในแต่ละ Sheet โดยยึดจาก "Date" โดย
เดือน Jan ให้อยู่ใน Sheet "01"
เดือน Feb ให้อยู่ใน Sheet "02"
ไปเรื่อยๆ ตามตัวอย่างในแต่ละ Sheet
อาจารย์พอมีสูตรหรือไม่ครับ ขอบคุณครับ
Re: อยากให้ข้อมูลไปอยู่ในแต่ละ Sheet
Posted: Mon Jul 11, 2022 3:22 pm
by puriwutpokin
กด ชีท 01 และ กด Shift แล้วไปกดที่ชีท 12
แล้วที่ ชีท D6=IFERROR(INDEX(Data!D:D,AGGREGATE(15,6,ROW(Data!$D$2:$D$99)/(TEXT(Data!$D$2:$D$99,"mm")=RIGHT(CELL("filename",$A$1),2)),ROWS(D$6:D6))),"") Copy right an down
Re: อยากให้ข้อมูลไปอยู่ในแต่ละ Sheet
Posted: Mon Jul 11, 2022 3:29 pm
by Xcelvba
puriwutpokin wrote: Mon Jul 11, 2022 3:22 pm
กด ชีท 01 และ กด Shift แล้วไปกดที่ชีท 12
แล้วที่ ชีท D6=IFERROR(INDEX(Data!D:D,AGGREGATE(15,6,ROW(Data!$D$2:$D$99)/(TEXT(Data!$D$2:$D$99,"mm")=RIGHT(CELL("filename",$A$1),2)),ROWS(D$6:D6))),"") Copy right an down
สอบถามจากสูตรหน่อยครับ CELL("filename",
$A$1)
1. ตรงเซลล์อ้างอิง (สีแดง) เป็น cell อะไรก็ได้ใน sheet นั้นๆใช่ไหมครับ
2. CELL filename ชื่อจะเปลี่ยนไปตาม sheet แต่ละชีทใช่ไหมครับ
ขอบคุณสำหรับความรู้ใหม่ๆครับ ผมทำได้แต่ช้าได้ทีละ sheet ด้วยสูตรนี้
=IFERROR(INDEX(Data!D:D,AGGREGATE(15,6,ROW(Data!$D$2:$D$55)/(MONTH(Data!$D$2:$D$55)=1),ROWS('01'!F$10:F10))),"")
Re: อยากให้ข้อมูลไปอยู่ในแต่ละ Sheet
Posted: Mon Jul 11, 2022 3:40 pm
by wisitsakbenz
เรียน อาจารย์ puriwutpokin
ใน Sheet "01" ถ้าข้อมูลมีไม่ถึงสูตรที่ Copy ไว้ ให้แสดงเป็นค่าว่าง ได้หรือไม่ครับ ขอบคุณครับ
Re: อยากให้ข้อมูลไปอยู่ในแต่ละ Sheet
Posted: Mon Jul 11, 2022 3:42 pm
by puriwutpokin
Xcelvba wrote: Mon Jul 11, 2022 3:29 pm
puriwutpokin wrote: Mon Jul 11, 2022 3:22 pm
กด ชีท 01 และ กด Shift แล้วไปกดที่ชีท 12
แล้วที่ ชีท D6=IFERROR(INDEX(Data!D:D,AGGREGATE(15,6,ROW(Data!$D$2:$D$99)/(TEXT(Data!$D$2:$D$99,"mm")=RIGHT(CELL("filename",$A$1),2)),ROWS(D$6:D6))),"") Copy right an down
สอบถามจากสูตรหน่อยครับ CELL("filename",
$A$1)
1. ตรงเซลล์อ้างอิง (สีแดง) เป็น cell อะไรก็ได้ใน sheet นั้นๆใช่ไหมครับ
2. CELL filename ชื่อจะเปลี่ยนไปตาม sheet แต่ละชีทใช่ไหมครับ
ขอบคุณสำหรับความรู้ใหม่ๆครับ ผมทำได้แต่ช้าได้ทีละ sheet ด้วยสูตรนี้
=IFERROR(INDEX(Data!D:D,AGGREGATE(15,6,ROW(Data!$D$2:$D$55)/(MONTH(Data!$D$2:$D$55)=1),ROWS('01'!F$10:F10))),"")
ดูตามลิ้งค์นี้ครับอาจารย์ คนควน อธิบายครับ
http://www.snasui.com/viewtopic.php?p=1 ... me#p112388
Re: อยากให้ข้อมูลไปอยู่ในแต่ละ Sheet
Posted: Mon Jul 11, 2022 3:44 pm
by puriwutpokin
wisitsakbenz wrote: Mon Jul 11, 2022 3:40 pm
เรียน อาจารย์ puriwutpokin
ใน Sheet "01" ถ้าข้อมูลมีไม่ถึงสูตรที่ Copy ไว้ ให้แสดงเป็นค่าว่าง ได้หรือไม่ครับ ขอบคุณครับ
แก้ไขเป็น
D6:E6=IFERROR(1/(1/INDEX(Data!D:D,AGGREGATE(15,6,ROW(Data!$D$2:$D$99)/(TEXT(Data!$D$2:$D$99,"mm")=RIGHT(CELL("filename",$A$1),2)),ROWS(D$6:D6)))),"")
F6=IF(D6="","",IFERROR(INDEX(Data!F:F,AGGREGATE(15,6,ROW(Data!$D$2:$D$99)/(TEXT(Data!$D$2:$D$99,"mm")=RIGHT(CELL("filename",$A$1),2)),ROWS(F$6:F6))),""))
Re: อยากให้ข้อมูลไปอยู่ในแต่ละ Sheet
Posted: Mon Jul 11, 2022 3:50 pm
by wisitsakbenz
เรียน อาจารย์ puriwutpokin
้ข้อมูล Medical Device และ Note ไม่แสดงครับ
Re: อยากให้ข้อมูลไปอยู่ในแต่ละ Sheet
Posted: Mon Jul 11, 2022 3:54 pm
by puriwutpokin
เฉพาะ F6=IFERROR(INDEX(Data!F:F,AGGREGATE(15,6,ROW(Data!$D$2:$D$99)/(TEXT(Data!$D$2:$D$99,"mm")=RIGHT(CELL("filename",$A$1),2)),ROWS(F$6:F6)))&"","")
Re: อยากให้ข้อมูลไปอยู่ในแต่ละ Sheet
Posted: Mon Jul 11, 2022 4:01 pm
by wisitsakbenz
เรียน อาจารย์ puriwutpokin
ได้แล้วครับ อาจารย์
ขอบคุณมากครับ
Re: อยากให้ข้อมูลไปอยู่ในแต่ละ Sheet
Posted: Tue Jul 12, 2022 11:46 am
by wisitsakbenz
เรียน อาจารย์ puriwutpokin
สูตรที่อาจารย์ให้ เวลามีการเปลี่ยนแปลงข้อมูล จะประมวลผลช้ามากเลยครับ
Data จริงๆ จะมีประมาณ 2- 3 พัน record ครับ
อาจารย์สามารถปรับสูตรได้หรือไม่ครับ ขอบคุณมากครับ
Re: อยากให้ข้อมูลไปอยู่ในแต่ละ Sheet
Posted: Tue Jul 12, 2022 12:36 pm
by snasui

ตัวอย่างสูตรที่ทำงานกับข้อมูลปริมาณมากตามด้านล่างครับ
- ที่ A1 คีย์สูตรเพื่อแสดงค่าที่สัมพันธ์กับชีตปัจจุบัน
=--RIGHT(CELL("filename",A1),2)
Enter
- ที่ A2 คีย์สูตรเพื่อนับว่าข้อมูลเป็นของชีตปัจจุบันกี่รายการ
=SUMPRODUCT(--(MONTH(Data!D2:D10000)=A1),--(Data!D2:D10000<>""))
Enter
- ที่ H5 คีย์คำว่า No เพื่อเป็นหัวข้อของรายการ
- ที่ H6 คีย์สูตรเพื่อแสดงลำดับของข้อมูลที่เป็นของชีตปัจจุบัน
=IF(ROWS(H$6:H6)>$A$2,"",AGGREGATE(15,6,ROW(Data!$D$2:$D$1000)/((Data!$D$2:$D$1000<>"")*(MONTH(Data!$D$2:$D$1000)=$A$1)),ROWS(H$6:H6)))
Enter > Copy ลงด้านล่าง
- ที่ A6 คีย์สูตรเพื่อแสดงรายการที่เกี่ยวข้อง
=IF($H6="","",INDEX(Data!A:A,$H6))&""
Enter > Copy ลงด้านล่างและไปยังลัมน์ที่เป็น Text ทั้งหมด
- ที่ D6 คีย์
=IF($H6="","",INDEX(Data!D:D,$H6))
Enter > Copy ไปยังคอลัมน์ E และลงด้านล่าง
- คัดลอกสูตรไปใช้กับชีตอื่น ๆ
Re: อยากให้ข้อมูลไปอยู่ในแต่ละ Sheet
Posted: Tue Jul 12, 2022 2:08 pm
by wisitsakbenz
เรียน อาจารย์ snasui
ได้แล้วครับ อาจารย์
ขอบคุณมากครับ