SUMIF
ฟังก์ชั่น SUMIF จะส่งค่ากลับมาเป็นผลรวมของคอลเลกชั่นของตัวเลข ที่รวมเฉพาะตัวเลขที่เป็นไปตามเงื่อนไขที่ระบุไว้เท่านั้น
SUMIF(ค่าทดสอบ, เงื่อนไข, ค่าผลรวม)
ค่าทดสอบ: คอลเลกชั่นที่ประกอบด้วยค่าที่จะถูกทดสอบ ค่าทดสอบสามารถประกอบด้วยค่าใดๆ
เงื่อนไข: นิพจน์ ที่เปรียบเทียบหรือทดสอบค่า และแสดงผลใน ค่าบูลีน เป็น TRUE หรือ FALSE เงื่อนไข สามารถรวมตัวดำเนินการเปรียบเทียบ ค่าคงที่ ตัวดำเนินการการเชื่อมเครื่องหมาย การอ้างอิง และอักขระตัวแทน คุณสามารถใช้ อักขระตัวแทน เพื่อให้ตรงกับอักขระเดี่ยวใดๆ หรืออักขระหลายตัวในนิพจน์ คุณสามารถใช้ ? (เครื่องหมายคำถาม) เพื่อแทนถึงอักขระหนึ่งตัว ใช้ * (เครื่องหมายดอกจัน) เพื่อแทนถึงอักขระหลายตัว และใช้ ~ (เครื่องหมายตัวหนอน) เพื่อระบุว่าให้ค้นหาอักขระที่ตามมาอย่างตรงตัว ไม่ใช่ใช้เป็นอักขระตัวแทน เงื่อนไขสามารถประกอบด้วยฟังก์ชั่น REGEX แทนอักขระตัวแทนได้ด้วย
ค่าผลรวม: คอลเลกชั่นทางเลือกที่ประกอบด้วยค่าที่จะถูกรวมเข้าด้วยกัน ค่าผลรวมสามารถประกอบด้วยค่าตัวเลข ค่าวันที่/เวลา หรือค่าระยะเวลา ซึ่งควรจะมีมีมิติเดียวกันกับ ค่าทดสอบ
หมายเหตุ
ถ้าค่าผลรวมถูกเว้นว่าง ค่าเริ่มต้นจะเป็นค่าทดสอบ
ถึงแม้ว่าค่าทดสอบสามารถประกอบด้วยค่าใดๆ แต่โดยทั่วไปก็ควรจะประกอบด้วยค่าที่เป็นประเภทของค่าเดียวกันทั้งหมด
โดยปกติ ค่าทดสอบจะประกอบด้วยค่าตัวเลขหรือค่าระยะเวลาเพียงอย่างเดียวถ้าค่าผลรวมถูกเว้นว่าง
ตัวอย่างเช่น |
---|
กำหนดให้ตารางเป็นดังนี้: |
A | B | C | D | E | |
---|---|---|---|---|---|
1 | 1 | 10 | a | a | c |
2 | 2 | 20 | b | c | b |
3 | 3 | 30 | a | a | c |
4 | 4 | 40 | |||
5 | 5 | 50 | 1 | 5 | 9 |
=SUMIF(A1:A5, "<5") จะส่งค่ากลับมาเป็น 10 เนื่องจากผลรวมของ 1, 2, 3 และ 4 (ค่าที่น้อยกว่า 5 (เงื่อนไข) ที่ระบุอยู่ใน ค่าทดสอบ ช่วง A1:A5) คือ 10 =SUMIF(A1:A5, "<>4") จะส่งค่ากลับมาเป็น 11 เนื่องจากผลรวมของ 1, 2, 3 และ 5 (ค่าที่ไม่เท่ากับ 4 (เงื่อนไข) ที่ระบุอยู่ในค่าทดสอบช่วง A1:A5) คือ 11 คุณยังสามารถใช้ตัวดำเนินการ ≠ ได้อีกด้วย =SUMIF(A1:A5, "<5", B1:B5) จะส่งค่ากลับมาเป็น 100 เนื่องจากผลรวมของ 10, 20, 30 และ 40 (ที่สอดคล้องกันกับคอลัมน์ B (ค่าผลรวม อยู่ใน B1:B5) สำหรับค่าเหล่านั้นในคอลัมน์ A ที่น้อยกว่าค่า 5) คือ 100 =SUMIF(D1:E3, "=c", A3:B5) จะส่งค่ากลับมาเป็น 84 เนื่องจากเซลล์เหล่านั้นในค่าผลรวม (เซลล์ B3, A4 และ B5) ที่สอดคล้องกับเซลล์ในค่าทดสอบที่เท่ากับ "c" (เซลล์ E1, D2 และ E3) ประกอบด้วย 30, 4 และ 50 ซึ่งมีผลรวมเท่ากับ 84 =SUMIF(A1:D5, 1) หรือ =SUMIF(A1:D5, SUM(1)) แต่ละสูตรจะส่งค่ากลับมาเป็น 2 ซึ่งเป็นผลรวมของ 1 ทั้งหมดที่เกิดขึ้นภายในช่วง |
ตัวอย่างในการใช้ REGEX |
---|
กำหนดให้ตารางเป็นดังนี้: |
A | B | |
---|---|---|
1 | 45 | marina@cavanna.com |
2 | 41 | Aaron |
3 | 29 | michael@cavanna.com |
4 | 64 | katrina@example.com |
5 | 12 | Sarah |
=SUMIF(B1:B5, REGEX("([A-Z0-9a-z._%+-]+)@([A-Za-z0-9.-]+\.[A-Za-z]{2,4})"),A1:A5) จะส่งค่ากลับมาเป็น 138 ซึ่งเป็นผลรวมของเซลล์ใน A1:A5 โดยเซลล์ที่สอดคล้องใน B1:B5 ประกอบด้วยที่อยู่อีเมล |