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
:D ลองตามนี้ครับ

ที่เซลล์ใด ๆ คีย์

=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
:D แถมอีกสูตรครับ

หากมีช่องว่างใน 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::D แถมอีกสูตรครับ

หากมีช่องว่างใน 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::D แถมอีกสูตรครับ

หากมีช่องว่างใน 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))
:D จากที่เข้าใจสูตร พอเจอที่อาจารย์ปรับให้ หลงทางกลับไม่ถูกเลยครับ :roll:

Re: อาจารย์ครับ ผมของการนับค่าจำนวนที่ไม่ซ้ำครับ

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

Re: อาจารย์ครับ ผมของการนับค่าจำนวนที่ไม่ซ้ำครับ

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

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
:D ทำไมมีแต่คนเก่งกว่าผมเนี่ย ไม่เข้าใจ :lol: