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
ผมยังไม่ดูไฟล์แนบนะครับ แต่ดูจากสูตรแล้วไม่สามารถจะให้คำตอบตามที่ต้องการได้ เนื่องจาก
1. Search จะให้ผลลัพธ์เป็นตัวเลข
2. เมื่อใช้ Istext กับผลลัพธ์ที่เป็นตัวเลขในข้อ 1 ย่อมเป็น False เสมอ ไม่มีโอกาสเป็น True ได้เลย
ลองปรับสูตรเป็น
SUM(IF(
Isnumber(SEARCH("รวม",$F$7:$AS$7)),$F8:$AS8))
Ctrl+Shift+Enter > สังเกตดูผล
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 อีกแน่ๆ ก็เลยทำเผื่อไว้ครับ ใช่ไหมครับ
ขอบคุณครับ
ตอบข้อ 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 เพิ่มข้อมูลเองได้ครับ