EXCEL TOOLS
Excel Add-ins ที่พัฒนาโดยคุณสันติพงศ์ ณสุย (MVP Excel 2010-2020) ด้วยภาษา C# เพื่อแก้ไขปัญหาไฟล์ใหญ่ คำนวณนาน ทำงานช้า จัดการข้อมูลต่าง ๆ ที่ทำงานประจำวันได้อย่างสะดวกรวดเร็ว สนใจคลิกไปดูได้ที่นี่ครับ => Excel Tools
Excel Add-ins ที่พัฒนาโดยคุณสันติพงศ์ ณสุย (MVP Excel 2010-2020) ด้วยภาษา C# เพื่อแก้ไขปัญหาไฟล์ใหญ่ คำนวณนาน ทำงานช้า จัดการข้อมูลต่าง ๆ ที่ทำงานประจำวันได้อย่างสะดวกรวดเร็ว สนใจคลิกไปดูได้ที่นี่ครับ => Excel Tools
[code]
และปิดด้วย [/code]
ตัวอย่างเช่น [code]dim r as range[/code]
เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)ตั้งค่าเรียบร้อยครับผมpuriwutpokin wrote: ↑Mon Jan 18, 2021 9:28 pm แจ้ง Version Excel ด้วยครับ
https://snasui.com/viewtopic.php?f=6&t=17480
ติดอยู่นิดนึงครับ พอดีห้อง ป.4/5เลขที่สุดท้ายคือ 28 หายไป แต่ในผลลัพธ์ไม่ขึ้นแสดง ผมเลยลองลบเลขที่สุดท้ายของห้องทุกห้องออกก็ไม่แสดงผลเหมือนกันครับpuriwutpokin wrote: ↑Tue Jan 19, 2021 12:28 am ต้องใช้คอลัมน์ช่วยครับ ษ7=IF($E7<>"เลขที่ขาด","",IFERROR(AGGREGATE(15,6,(ROW(INDIRECT("1:"&$F5))-1)/ISNA(MATCH(ROW(INDIRECT("1:"&$F5))-1,OFFSET($B$2,MATCH($D5,$C$2:$C$118,)-1,,COUNTIF($C$2:$C$118,$D5),1),0)),COLUMNS($K7:K7)+1),"")) คัดลอกไปถึง Z7 และลงล่างครับ
F7=MID(CONCATENATE(K7,",",L7,",",M7,",",N7,",",O7,",",P7,",",Q7,",",R7,",",S7,",",T7,",",U7,",",V7,",",W7,",",X7,",",Y7,",",Z7),1,SUM(LEN(K7:Z7))+15-COUNTBLANK(K7:Z7)) คัดลอกไปเซลที่เกี่ยวข้อง
ขอบคุณมากครับ ตอนแรกผมก็กำปั้นทุบดินเลยไม่รู้จะแก้ตรงไหน เลยใช้วิธีเพิ่มจำนวนนักเรียนทั้งห้องอีก 1 คนเหมือนกัน แต่ผมเพิ่มสดไม่ได้ไปแก้ในสูตรครับ จริงๆผมคิดว่าเอกเซลทำไม่ได้นะโจทย์นี้เพราะในมุมมองของผมมันซับซ้อนมากๆ ฟอร์มชุดนี้ที่ผมทำเป็นการเช็คนักเรียนตอบกลับจาก GoogleFrom (เรียนออนไลน์ครับ) ช่วยได้มากจริงๆเลยเอาไว้เช็คคนที่ยังไม่ได้ส่งงาน ขอขอบคุณอีกครั้งนะครับpuriwutpokin wrote: ↑Tue Jan 19, 2021 7:16 am แก้ k7=IF($E7<>"เลขที่ขาด","",IFERROR(AGGREGATE(15,6,(ROW(INDIRECT("1:"&$F5+1))-1)/ISNA(MATCH(ROW(INDIRECT("1:"&$F5+1))-1,OFFSET($B$2,MATCH($D5,$C$2:$C$118,)-1,,COUNTIF($C$2:$C$118,$D5),1),0)),COLUMNS($K7:K7)+1),"")) คัดลอกทั่วตาราง
2003 ปรับ K7=IF(COLUMNS($K7:K7)>$H7,"",SMALL(IF(ISNA(MATCH(ROW(INDIRECT("1:"&$F5)),OFFSET($B$1,MATCH($D5,$C$2:$C$118,),,COUNTIF($C$2:$C$118,$D5),1),0)),ROW(INDIRECT("1:"&$F5))),COLUMNS($K7:K7))) กด Ctrl+Shift+Enter คัดลอกทั่วตารางครับ
แก้ไข K7=IF($E7<>"เลขที่ขาด","",IFERROR(AGGREGATE(15,6,ROW(INDIRECT("1:"&$F5))/ISNA(MATCH(ROW(INDIRECT("1:"&$F5)),OFFSET($B$1,MATCH($D5,$C$2:$C$118,),,COUNTIF($C$2:$C$118,$D5),1),0)),COLUMNS($K7:K7)),""))puriwutpokin wrote: ↑Tue Jan 19, 2021 7:16 am แก้ k7=IF($E7<>"เลขที่ขาด","",IFERROR(AGGREGATE(15,6,(ROW(INDIRECT("1:"&$F5+1))-1)/ISNA(MATCH(ROW(INDIRECT("1:"&$F5+1))-1,OFFSET($B$2,MATCH($D5,$C$2:$C$118,)-1,,COUNTIF($C$2:$C$118,$D5),1),0)),COLUMNS($K7:K7)+1),"")) คัดลอกทั่วตาราง
ลองแนบไฟล์มาดูครับlinzhengli wrote: ↑Tue Jan 19, 2021 2:13 pm F7,10,13,16,19 ต้องใส่สูตรเช่นไรครับ ของผมคัดลอกจากระบบแต่อ่านค่าเป็น #value! ครับ