Page 1 of 1

ใช้สูตร SUM ถ้ามันเจอคำว่า รวม โดยหาคำว่ารวมโดยใช้ SEARCH

Posted: Fri Oct 01, 2010 8:57 am
by godman
ผมใช้สูตรนี้ในการหาผลรวมของแถว ถ้าแถวแรกมีคำว่า รวม อยู่ครับ
SUM(IF(ISTEXT(SEARCH("รวม",$F$7:$AS$7)),$F8:$AS8))
แต่ผมันไม่ได้ตามไฟล์แนบ
ไม่ทราบว่าเพราะอะไรครับ

Re: ใช้สูตร SUM ถ้ามันเจอคำว่า รวม โดยหาคำว่ารวมโดยใช้ SEARC

Posted: Fri Oct 01, 2010 9:30 am
by snasui
:D ผมยังไม่ดูไฟล์แนบนะครับ แต่ดูจากสูตรแล้วไม่สามารถจะให้คำตอบตามที่ต้องการได้ เนื่องจาก

1. Search จะให้ผลลัพธ์เป็นตัวเลข
2. เมื่อใช้ Istext กับผลลัพธ์ที่เป็นตัวเลขในข้อ 1 ย่อมเป็น False เสมอ ไม่มีโอกาสเป็น True ได้เลย

ลองปรับสูตรเป็น

SUM(IF(Isnumber(SEARCH("รวม",$F$7:$AS$7)),$F8:$AS8))

Ctrl+Shift+Enter > สังเกตดูผล :mrgreen:

Re: ใช้สูตร SUM ถ้ามันเจอคำว่า รวม โดยหาคำว่ารวมโดยใช้ SEARC

Posted: Fri Oct 01, 2010 10:03 am
by godman
ได้ตามที่ต้องการ สิ่งที่ได้เรียนรู้คือ
1.sumif ก็ต้องกด ctrl shift enter เหมือนว่าเป็น array ตอนแรกผมไม่กด มันได้ 0 แต่กดแล้วได้ตามต้องการ ผมเข้าใจว่ามันมีแต่ sumproduct ที่ต้องกด แบบนี้
2.ที่ผมใช้สูตรนี้เพราะไม่แน่ใจว่าผู้ใช้จะเพิ่ม Field อีกแน่ๆ ก็เลยทำเผื่อไว้ครับ ใช่ไหมครับ
ขอบคุณครับ

Re: ใช้สูตร SUM ถ้ามันเจอคำว่า รวม โดยหาคำว่ารวมโดยใช้ SEARC

Posted: Fri Oct 01, 2010 10:17 am
by snasui
theeranart wrote:ได้ตามที่ต้องการ สิ่งที่ได้เรียนรู้คือ
1.sumif ก็ต้องกด ctrl shift enter เหมือนว่าเป็น array ตอนแรกผมไม่กด มันได้ 0 แต่กดแล้วได้ตามต้องการ ผมเข้าใจว่ามันมีแต่ sumproduct ที่ต้องกด แบบนี้
2.ที่ผมใช้สูตรนี้เพราะไม่แน่ใจว่าผู้ใช้จะเพิ่ม Field อีกแน่ๆ ก็เลยทำเผื่อไว้ครับ ใช่ไหมครับ
ขอบคุณครับ
:D ตอบข้อ 1 Sumif(...) กับ Sum(If(...)) ไม่เหมือนกันนะครับ อันหลังโดยปกติแล้วต้องกด Ctrl+Shift+Enter เสมอ เป็นการบังคับให้คำนวณแบบ Array ส่วน Sumproduct โดยปกติแล้วกดแป้น Enter ธรรมดาครับ เพราะมันเป็นสูตร Array โดยธรรมชาติ

ผมเปิดดูไฟล์แนบแล้วครับ

ที่ AT8 ใช้ Sumif ธรรมดาก็พอครับ เป็น

=SUMIF($F$7:$AS$7,"รวม",F8:AS8)

Enter > Copy ลงด้านล่าง

ตอบข้อ 2 Sumif, Countif ใช้ในการคำนวณแบบเงื่อนไขเดียวที่คำนวณได้รวดเร็วกว่าการใช้สูตร Array หรือเรียกได้ว่าเร็วที่สุดในการคำนวณแบบมีเงื่อนไข สามารถคลุมพื้นที่เผื่อได้ถ้าหาก User เพิ่มข้อมูลเองได้ครับ :mrgreen: