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]
เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)Xcelvba wrote: Fri Aug 25, 2023 2:24 pm ลองสูตรนี้ครับ
D5=COUNTIFS(data!$E$2:$E$34,"<0.5")
E5=COUNTIFS(data!$E$2:$E$34,"<0.5",data!$D$2:$D$34,E$4)
ลากสูตรไป I5
D6=COUNTIFS(data!$E$2:$E$34,">=0.5",data!$E$2:$E$34,"<=1.0")
E6=COUNTIFS(data!$E$2:$E$34,">=0.5",data!$E$2:$E$34,"<=1.0",data!$D$2:$D$34,E$4)
ลากสูตรไป I6
..........
เปลี่ยนเลขตามที่ต้องการ
D10=COUNTIFS(data!$E$2:$E$34,">5")
E10=COUNTIFS(data!$E$2:$E$34,">5",data!$D$2:$D$34,E$4)
ลากไป I10
norkaz wrote: Sat Aug 26, 2023 7:39 am ...
คำตอบที่ผมเขียนนี้ ไม่ตรงกับที่ ท่านเจ้าของคำถาม แสดงไว้ในไฟล์แนบ
หากไม่ถูกต้อง กรุณาแจ้งกลับมาด้วยครับ
a) Sheet output
B5:B10 คีย์เลขน้อยที่สุดของแต่ละระดับ
b) Sheet data
J2
=LOOKUP(F2,output!$B$6:$B$10)
c) K2
=INDEX(MATCH($B$2:$B$34&$J$2:$J$34,$B$2:$B$34&$J$2:$J$34,0)=ROW($B$2:$B$34)-ROW($B$2)+1,ROWS($K$2:K2))
d) Sheet output
D5:D11
=COUNTIFS(data!$J$2:$J$34,B5,data!$K$2:$K$34,TRUE)
e) E5:I10
=SUMIFS(data!$G$2:$G$34,data!$J$2:$J$34,$B5,data!$D$2:$D$34,E$4)
f) D11:I11
=SUM(D5:D10)
**สนับสนุนฟอรั่ม กรุณาคลิกโฆษณาที่หน้าเพจ***
แมวใหญ่ Bigcat9
ผมได้ใช้ pivot ในการนับจำนวนโครงการโดยนับจากรหัสโครงการ จะพบว่า ข้อมูลโครงการทั้งหมดที่เปิดขาย มี 20 โครงการ ครับnorkaz wrote: Sat Aug 26, 2023 11:15 pm ...
การเขียนสูตรนั้น ได้อ้างอิงจากตัวอย่าง คำตอบที่ผู้สอบถาม ได้สอบถามเข้ามาเป็นหลัก
ในไฟล์ แนบที่ท่านเจ้าของ คำถาม สอบถามมา ตัวเลขตัวอย่างคำตอบคือ
0+1+5+11+4+2 ซึ่งเท่ากับ 23 ซึ่งสูตรที่เขียนไป ก็เท่ากับ 23
หากให้นับได้ 20 ไม่ใช่ 23 ช่วยแนบไฟล์ Excel ต่อจากที่ตอบไปแล้ว หรือไฟล์ ที่เกี่ยวข้องกับปัญหานั้นมา + คำถาม + ตัวอย่างคำตอบที่ต้องการ ให้ด้วยครับ
ควรแนบไฟล์ Excel มาด้วยทุกครั้ง ที่สอบถาม เพื่อท่านเจ้าของคำถาม ไม่เสียโอกาสในการสอบถามครับ
** สนับสนุนฟอรั่ม กรุณาคลิกโฆษณาหน้าเพจ ***
แมวใหญ่ Bigcat9
norkaz wrote: Sat Aug 26, 2023 11:45 pm ...
ต้องย้อนกลับไปถึงโจทย์ แรก ที่ท่านเจ้าของ คำถามได้สอบถามมา
1. ท่านเจ้าของ คำถามให้ตัวอย่าง คำตอบมา คือ 0+1+5+11+4+2 ซึ่งเท่ากับ 23
2. ซึ่งสูตรที่ผมเขียนไป ก็เท่ากับ 23
3. ท่านเจ้าของ คำถามยืนยันว่า ต้องได้ 20 ผมลองบวก ใหม่ 0+1+5+11+4+2 ยังคงได้ 23 เท่าเดิม
ท่านเจ้าของ คำถาม ต้องแนบ ไฟล์ ที่ผมตอบไปแล้ว และชี้ให้เห็นว่า ที่ผิดนั้น คือจุดใดเพื่อ จะได้ แก้ไข จากตรงนั้นครับ
** สนับสนุนฟอรั่ม กรุณาคลิกโฆษณาหน้าเพจ ***
แมวใหญ่ Bigcat9
ตามตารางที่คุณ norkaz ตอบมาในตารางแรก การนับจำนวนโครงการโดยใช้ระดับราคาเป็นเงื่อนไขในการจำแนกแบ่งตามระดับราคาถูกต้องแล้วครับ แต่เมื่อนับจำนวนรวมโครงการที่เปิดขายจริงๆ ในช่องรวม ซึ่งมีโครงการที่เปิดขายจริงเพียง 20 โครงการ ดังนั้น ในการนับจำนวนโครงการรวม (#ช่องรวม) #จะไม่ใช้เงื่อนไขระดับราคาในการจำแนกโครงการครับnorkaz wrote: Sun Aug 27, 2023 12:01 am ...
ย้อนกลับไปถึงโจทย์ แรก ที่ท่านเจ้าของ คำถามได้สอบถามมา
คือผมอยากให้ท่านเจ้าของ คำถาม แนบไฟล์ ที่ผมตอบไป และชี้ว่า ที่ผิดนั้นคือ ที่ใด จากภาพ ผลรวม คือ 23
ท่านเจ้าของ คำถามยืนยันว่า ต้องได้ 20 ผมรบกวนช่วยแจ้งว่า บรรทัดใด หรือ ตำแหน่งใด ในภาพ ที่ ตัวเลขยังไม่ถูกต้องครับ
ต้องสรุปตรงนี้ก่อนครับ ไม่เช่นนั้น การถามตอบจะไปต่อไม่ได้ครับ
** สนับสนุนฟอรั่ม กรุณาคลิกโฆษณาหน้าเพจ ***
แมวใหญ่ Bigcat9
เพิ่มเติมครับ การแยกนับแบบนี้จึงถูกต้อง ท่านเจ้าของคำถาม ควรแยก การหาผลรวมทั้งหมดของจำนวนโครงการ ในลักษณะนี้ ออกมาต่างหากจาก ตาราง ในโจทย์ ที่สอบถามnorkaz wrote: Sun Aug 27, 2023 1:07 am ...
=SUMPRODUCT(1/COUNTIF(B2:B34,B2:B34))
** สนับสนุนฟอรั่ม กรุณาคลิกโฆษณาหน้าเพจ ***
แมวใหญ่ Bigcat9
norkaz wrote: Sun Aug 27, 2023 8:35 amเพิ่มเติมครับ การแยกนับแบบนี้จึงถูกต้อง ท่านเจ้าของคำถาม ควรแยก การหาผลรวมทั้งหมดของจำนวนโครงการ ในลักษณะนี้ ออกมาต่างหากจาก ตาราง ในโจทย์ ที่สอบถามnorkaz wrote: Sun Aug 27, 2023 1:07 am ...
=SUMPRODUCT(1/COUNTIF(B2:B34,B2:B34))
** สนับสนุนฟอรั่ม กรุณาคลิกโฆษณาหน้าเพจ ***
แมวใหญ่ Bigcat9
การคิดแบบตามตารางที่สอบถามมานั้น ถูกบังคับด้วยราคา ในแต่ละระดับ
มีบางโครงการ ที่ มีราคา มากกว่า หนึ่งระดับ ในโจทย์ มี 3 โครงการ ที่มี ราคา 2 แบบ
ดังนั้นโครงการทั้งหมด ที่คำนวณจาก ตารางที่บังคับรูปแบบ ด้วยราคานั้น ต้องเป็น
20+3 = 23 ไม่มีทางที่จะเป็น 20 ตามที่ท่านเจ้าของคำถามต้องการคำตอบ
เนื่องจาก ผลลัพธ์จากโจทย์นี้จะถูกบังคับด้วย 0+1+5+11+4+2 ซึ่งเท่ากับ 23
หากต้องการ ชี้ไปว่า ทั้งหมดมีกี่โครงการ ก็ต้อง ตัด การคิดแบบอ้างอิงราคา ในตารางตามโจทย์ออกไป
แล้วใช้วิธีการคำนวนไปตรงๆ แบบที่ได้แสดงวิธีการไป
SUMPRODUCT(1/COUNTIF(B2:B34,B2:B34))
หากข้อมูลเพิ่มขึ้น ให้ปรับช่วงเซลล์ไปตามจริง
** สนับสนุนฟอรั่ม กรุณาคลิกโฆษณาที่หน้าเพจ***
แมวใหญ่ Bigcat9