Page 1 of 1
อาจารย์ครับ ผมของการนับค่าจำนวนที่ไม่ซ้ำครับ
Posted: Sat Sep 28, 2013 10:25 am
by ballkoong
อาจารย์ครับ ผมของการนับค่าจำนวนที่ไม่ซ้ำครับ
ปัญหาคือรายการ ที่ต้องการหาเยอะครับ แต่ส่วนมาชื่อจะซ้ำกันครับ จึงอยากได้วิธีที่ ไม่นับค่าซ้ำครับ
Re: อาจารย์ครับ ผมของการนับค่าจำนวนที่ไม่ซ้ำครับ
Posted: Sat Sep 28, 2013 11:23 am
by snasui

ลองตามนี้ครับ
ที่เซลล์ใด ๆ คีย์
=SUMPRODUCT(1/COUNTIF(C4:C66,C4:C66))
Enter
จะเป็นการนับค่าที่ไม่ซ้ำในช่วง C4:C66 โดย C4:C66 จะต้องไม่มีบรรทัดว่าง หากมีบรรทัดว่างสามารถใช้สูตรตามด้านล่าง
=SUMPRODUCT((C4:C66<>"")/COUNTIF(C4:C66,C4:C66
&""))
Re: อาจารย์ครับ ผมของการนับค่าจำนวนที่ไม่ซ้ำครับ
Posted: Sat Sep 28, 2013 1:14 pm
by bank9597

แถมอีกสูตรครับ
หากมีช่องว่างใน C4:C66 ลองใช้สูตรนี้ครับ
=SUM(IF(FREQUENCY(IF(C4:C66<>"",MATCH(C4:C66,C4:C66,0),""), IF(C4:C66<>"",MATCH(C4:C66,C4:C66,0),""))>0,1))
กด Ctrl+Shift+Enter
Re: อาจารย์ครับ ผมของการนับค่าจำนวนที่ไม่ซ้ำครับ
Posted: Sat Sep 28, 2013 2:57 pm
by snasui
bank9597 wrote:
แถมอีกสูตรครับ
หากมีช่องว่างใน C4:C66 ลองใช้สูตรนี้ครับ
=SUM(IF(FREQUENCY(IF(C4:C66<>"",MATCH(C4:C66,C4:C66,0),""), IF(C4:C66<>"",MATCH(C4:C66,C4:C66,0),""))>0,1))
กด Ctrl+Shift+Enter
การใช้ Sum แบบ Array สามารถลดทอนสูตรลงเหลือตามด้านล่างเพื่อประสิทธิภาพการประมวลผลครับ
=SUM(IF(FREQUENCY(IF(C4:C66<>"",MATCH(C4:C66,C4:C66,0)),ROW(C4:C66)-ROW(C4)+1),1))
Re: อาจารย์ครับ ผมของการนับค่าจำนวนที่ไม่ซ้ำครับ
Posted: Sat Sep 28, 2013 3:10 pm
by bank9597
snasui wrote:bank9597 wrote:
แถมอีกสูตรครับ
หากมีช่องว่างใน C4:C66 ลองใช้สูตรนี้ครับ
=SUM(IF(FREQUENCY(IF(C4:C66<>"",MATCH(C4:C66,C4:C66,0),""), IF(C4:C66<>"",MATCH(C4:C66,C4:C66,0),""))>0,1))
กด Ctrl+Shift+Enter
การใช้ Sum แบบ Array สามารถลดทอนสูตรลงเหลือตามด้านล่างเพื่อประสิทธิภาพการประมวลผลครับ
=SUM(IF(FREQUENCY(IF(C4:C66<>"",MATCH(C4:C66,C4:C66,0)),ROW(C4:C66)-ROW(C4)+1),1))

จากที่เข้าใจสูตร พอเจอที่อาจารย์ปรับให้ หลงทางกลับไม่ถูกเลยครับ

Re: อาจารย์ครับ ผมของการนับค่าจำนวนที่ไม่ซ้ำครับ
Posted: Sat Sep 28, 2013 3:26 pm
by snasui

ค่อย ๆ ศึกษาไปครับ การทดสอบทดลองเยอะ ๆ จะทำให้เราสามารถเข้าใจลักษณะการแสดงผลได้เอง เพียงแต่ว่าหากต้องการให้มันกระชับอาจจะต้องใช้เวลา ที่เขียนมานั้นก็ถือว่าเป็นความพยายามที่ยอดเยี่ยมแล้วครับ

Re: อาจารย์ครับ ผมของการนับค่าจำนวนที่ไม่ซ้ำครับ
Posted: Sat Sep 28, 2013 3:31 pm
by bank9597
snasui wrote:
ค่อย ๆ ศึกษาไปครับ การทดสอบทดลองเยอะ ๆ จะทำให้เราสามารถเข้าใจลักษณะการแสดงผลได้เอง เพียงแต่ว่าหากต้องการให้มันกระชับอาจจะต้องใช้เวลา ที่เขียนมานั้นก็ถือว่าเป็นความพยายามที่ยอดเยี่ยมแล้วครับ


ขอบคุณมากครับ
Re: อาจารย์ครับ ผมของการนับค่าจำนวนที่ไม่ซ้ำครับ
Posted: Sun Sep 29, 2013 11:26 pm
by norkaz
ถึงเซียน Bank ...
ขอแจมครับ ดักแถวว่าง ซ้อน IFERROR ลงไป น่าจะพอไหว..
=SUM(IF(IFERROR(MATCH(C4:C66,C4:C66,0),"")=ROW(C4:C66)-ROW(C4)+1,1))
Ctrl + Shift -> Enter
Norkaz
Re: อาจารย์ครับ ผมของการนับค่าจำนวนที่ไม่ซ้ำครับ
Posted: Mon Sep 30, 2013 11:44 am
by bank9597
norkaz wrote:ถึงเซียน Bank ...
ขอแจมครับ ดักแถวว่าง ซ้อน IFERROR ลงไป น่าจะพอไหว..
=SUM(IF(IFERROR(MATCH(C4:C66,C4:C66,0),"")=ROW(C4:C66)-ROW(C4)+1,1))
Ctrl + Shift -> Enter
Norkaz

ทำไมมีแต่คนเก่งกว่าผมเนี่ย ไม่เข้าใจ
