AVERAGEIF
ฟังก์ชั่น AVERAGEIF จะส่งค่าเฉลี่ย (ค่าเฉลี่ยเลขคณิต) ของเซลล์ที่อยู่ในช่วงของเงื่อนไขที่ระบุ
AVERAGEIF(ค่าทดสอบ, เงื่อนไข, ค่าที่จะเฉลี่ย)
ค่าทดสอบ: คอลเลกชั่นที่ประกอบด้วยค่าที่จะทดสอบ ค่าทดสอบสามารถประกอบด้วยค่าใดๆ
เงื่อนไข: นิพจน์ ที่เปรียบเทียบหรือทดสอบค่า และแสดงผลใน ค่าบูลีน เป็น TRUE หรือ FALSE เงื่อนไข สามารถรวมตัวดำเนินการเปรียบเทียบ ค่าคงที่ ตัวดำเนินการการต่อเชื่อมเครื่องหมาย การอ้างอิง และอักขระตัวแทน คุณสามารถใช้ อักขระตัวแทน เพื่อให้ตรงกับอักขระเดี่ยวใดๆ หรืออักขระหลายตัวในนิพจน์ คุณสามารถใช้ ? (เครื่องหมายคำถาม) เพื่อแทนถึงอักขระหนึ่งตัว ใช้ * (เครื่องหมายดอกจัน) เพื่อแทนถึงอักขระหลายตัว และใช้ ~ (เครื่องหมายตัวหนอน) เพื่อระบุว่าให้ค้นหาอักขระที่ตามมาอย่างตรงตัว ไม่ใช่ใช้เป็นอักขระตัวแทน เงื่อนไขสามารถประกอบด้วยฟังก์ชั่น REGEX แทนอักขระตัวแทนได้ด้วย
ค่าที่จะเฉลี่ย: คอลเลกชั่นตัวเลือกที่ประกอบด้วยจำนวนที่จะถูกเฉลี่ย ค่าที่จะเฉลี่ย จะเป็นการอ้างอิงถึงคอลเลกชั่นหนึ่งๆ ของเซลล์ ที่อาจจะประกอบด้วยค่าตัวเลข หรือค่าบูลีน
หมายเหตุ
แต่ละค่าจะถูกเปรียบเทียบกับ เงื่อนไข ถ้าค่าพบจากการทดสอบเงื่อนไขนั้น ค่าที่สอดคล้องในค่าที่จะเฉลี่ยจะถูกรวมไปในการเฉลี่ย
ค่าที่จะเฉลี่ย และ ค่าทดสอบ (หากระบุ) จะต้องมีขนาดเท่ากัน
ถ้าค่าที่จะเฉลี่ยถูกเว้นว่าง ซึ่งค่าทดสอบจะถูกใช้สำหรับค่าที่จะเฉลี่ย
ถ้าค่าที่จะเฉลี่ยถูกเว้นว่างหรือเหมือนกันกับค่าทดสอบ โดยค่าทดสอบนั้นสามารถประกอบด้วยตัวเลข นิพจน์ตัวเลข หรือค่าบูลีนได้
ถ้ามีมากกว่าหนึ่ง เงื่อนไข หรือชุดของ ค่าทดสอบ จำเป็นในการใช้งาน ควรใช้ฟังก์ชั่น AVERAGEIFS
ตัวอย่างเช่น |
---|
กำหนดให้ตารางเป็นดังนี้: |
A | B | C | D | |
---|---|---|---|---|
1 | อายุ | เพศ | สถานะ | เงินเดือน |
2 | 35 | แต่งงาน | แต่งงาน | 71000 |
3 | 27 | F | แต่งงาน | 81000 |
4 | 42 | แต่งงาน | แต่งงาน | 86000 |
5 | 51 | แต่งงาน | โสด | 66000 |
6 | 28 | แต่งงาน | โสด | 52000 |
7 | 49 | F | โสด | 62000 |
8 | 63 | F | แต่งงาน | 89000 |
9 | 22 | แต่งงาน | แต่งงาน | 34000 |
10 | 29 | F | โสด | 42000 |
11 | 35 | F | แต่งงาน | 56000 |
12 | 33 | แต่งงาน | โสด | 62000 |
13 | 61 | แต่งงาน | แต่งงาน | 91000 |
=AVERAGEIF(A2:A13, "<40", D2:D13) จะส่งค่าประมาณกลับมาเป็น 56857 ซึ่งเป็นค่าเฉลี่ยเงินเดือนของประชากรที่อายุน้อยกว่า 40 ปี =AVERAGEIF(B2:B13, "=หญิง", D2:D13) จะส่งค่ากลับมาเป็น 66000 ซึ่งเป็นค่าเฉลี่ยเงินเดือนของผู้หญิง (ระบุโดย "หญิง" ในคอลัมน์ B) =AVERAGEIF(C2:C13, "โสด", D2:D13) จะส่งค่ากลับมาเป็น 56800 ซึ่งเป็นค่าเฉลี่ยเงินเดือนของประชากรที่ไม่ได้แต่งงาน (ระบุโดย "โสด" ในคอลัมน์ C) =AVERAGEIF(A2:A13, ">=40", D2:D13) จะส่งค่าประมาณกลับมาเป็น 78800 ซึ่งเป็นค่าเฉลี่ยเงินเดือนของประชากรที่อายุ 40 ปีหรือมากกว่า |
ตัวอย่างในการใช้ REGEX |
---|
กำหนดให้ตารางเป็นดังนี้: |
A | B | |
---|---|---|
1 | 45 | john@appleseed.com |
2 | 41 | Aaron |
3 | 29 | janedoe@appleseed.com |
4 | 64 | jake@appleseed.com |
5 | 12 | Sarah |
=AVERAGEIF(B1:B5, REGEX("([A-Z0-9a-z._%+-]+)@([A-Za-z0-9.-]+\.[A-Za-z]{2,4})"), A1:A5) จะส่งค่ากลับมาเป็น 46 ซึ่งเป็นค่าเฉลี่ยของเซลล์ทั้งหมดใน A1:A5 โดยเซลล์ที่สอดคล้องกันใน B1:B5 ประกอบด้วยที่อยู่อีเมล |