สารบัญ
ในบทช่วยสอนสั้นๆ นี้ เราจะพูดถึงฟังก์ชัน Excel SMALL วิธีการทำงานและวิธีใช้เพื่อค้นหาตัวเลข วันที่ หรือเวลาที่น้อยที่สุดอันดับที่ N
ต้องการ หากต้องการค้นหาตัวเลขที่ต่ำที่สุดในเวิร์กชีต สิ่งนี้ค่อนข้างง่ายที่จะทำด้วยคุณสมบัติการจัดเรียงของ Excel ไม่ต้องการเสียเวลาในการจัดเรียงข้อมูลใหม่ทุกครั้งที่มีการเปลี่ยนแปลงใช่ไหม ฟังก์ชัน SMALL จะช่วยให้คุณค้นหาค่าต่ำสุด น้อยที่สุดอันดับสอง น้อยที่สุดอันดับสาม และอื่นๆ ได้อย่างรวดเร็ว
ฟังก์ชัน SMALL ของ Excel
SMALL เป็นฟังก์ชันทางสถิติที่ส่งกลับค่า ค่าที่น้อยที่สุดลำดับที่ n ในชุดข้อมูล
ไวยากรณ์ของฟังก์ชัน SMALL ประกอบด้วยสองอาร์กิวเมนต์ ซึ่งจำเป็นต้องมีทั้งสองอาร์กิวเมนต์
SMALL(array, k)
ที่ไหน:
- อาร์เรย์ - อาร์เรย์หรือช่วงของเซลล์ที่จะแยกค่าที่น้อยที่สุด
- K - อัน จำนวนเต็มที่ระบุตำแหน่งจากค่าต่ำสุดที่จะส่งกลับ เช่น k-th ที่เล็กที่สุด
ฟังก์ชันนี้มีอยู่ใน Excel ทุกรุ่นสำหรับ Office 365, Excel 2021, Excel 2019, Excel 2016, Excel 2013, Excel 2010 และรุ่นก่อนหน้า
เคล็ดลับ หากต้องการหาค่าต่ำสุด k-th พร้อมเกณฑ์ ให้ใช้สูตร SMALL IF ของ Excel
สูตร SMALL พื้นฐานใน Excel
สูตร SMALL ในรูปแบบพื้นฐานนั้นสร้างได้ง่ายมาก คุณเพียงแค่ระบุ ช่วงและตำแหน่งจากรายการที่เล็กที่สุดที่จะส่งคืน
ในรายการตัวเลขใน B2:B10 สมมติว่าคุณต้องการแยกค่าที่น้อยที่สุดเป็นอันดับสาม สูตรก็เช่นง่ายๆ เช่น:
=SMALL(B2:B10, 3)
เพื่อให้คุณตรวจสอบผลลัพธ์ได้ง่ายขึ้น คอลัมน์ B จะเรียงลำดับจากน้อยไปหามาก:
4 สิ่งที่คุณควรทราบเกี่ยวกับฟังก์ชัน SMALL
บันทึกการใช้งานต่อไปนี้จะช่วยให้คุณเข้าใจลักษณะการทำงานของฟังก์ชัน SMALL ได้ดีขึ้น และหลีกเลี่ยงความสับสนเมื่อสร้างสูตรของคุณเอง
- ใดๆ เซลล์ว่าง ค่า ข้อความ และค่า ตรรกะ ค่า TRUE และ FALSE ในอาร์กิวเมนต์ อาร์เรย์ จะถูกละเว้น
- ถ้า อาร์เรย์ มี ข้อผิดพลาด ตั้งแต่หนึ่งรายการขึ้นไป ระบบจะส่งกลับข้อผิดพลาด
- ในกรณีที่มี รายการที่ซ้ำกัน ใน อาร์เรย์ สูตรของคุณ อาจส่งผลให้เกิด "ความผูกพันธ์" ตัวอย่างเช่น ถ้าสองเซลล์มีเลข 1 และฟังก์ชัน SMALL ได้รับการกำหนดค่าให้ส่งกลับค่าที่น้อยที่สุดและน้อยที่สุดเป็นอันดับสอง คุณจะได้ 1 ในทั้งสองกรณี
- สมมติว่า n เป็นจำนวนของค่าใน อาร์เรย์ , SMALL(อาร์เรย์,1) จะคืนค่าต่ำสุด และ SMALL(อาร์เรย์,n) จะเลือกค่าสูงสุด
วิธีใช้ฟังก์ชัน SMALL ใน Excel - ตัวอย่างสูตร
และตอนนี้ มาดูตัวอย่างเพิ่มเติมของฟังก์ชัน Excel SMALL ที่นอกเหนือไปจากการใช้งานพื้นฐาน
ค้นหาค่า 3, 5, 10 และอื่นๆ ด้านล่าง
ดังที่คุณทราบแล้ว ฟังก์ชัน SMALL ได้รับการออกแบบมาเพื่อคำนวณค่าต่ำสุดอันดับที่ n ตัวอย่างนี้แสดงวิธีการที่มีประสิทธิภาพสูงสุด
ในตารางด้านล่าง สมมติว่าคุณต้องการหาค่า 3 ค่าล่างสุด สำหรับสิ่งนี้ ให้พิมพ์หมายเลข 1, 2 และ 3 ในเซลล์แยกกัน (D3, D4 และ D5 ในกรณีของเรา) จากนั้น ป้อนสูตรต่อไปนี้ใน E3 และลากลงมาผ่าน E5:
=SMALL($B$2:$B$10, D3)
ใน E3 สูตรจะแยกค่าที่น้อยที่สุดโดยใช้ตัวเลขใน D3 สำหรับ k อาร์กิวเมนต์ สิ่งสำคัญคือการจัดหาการอ้างอิงเซลล์ที่เหมาะสม เนื่องจากสูตรจะคัดลอกอย่างถูกต้องในเซลล์อื่นๆ: ค่าสัมบูรณ์สำหรับ อาร์เรย์ และค่าสัมพัทธ์สำหรับ k .
ไม่ต้องการพิมพ์อันดับด้วยตนเองใช่ไหม ใช้ฟังก์ชัน ROWS กับการอ้างอิง ช่วงการขยาย เพื่อระบุค่า k สำหรับสิ่งนี้ เราทำการอ้างอิงแบบสัมบูรณ์สำหรับเซลล์แรก (หรือล็อกเฉพาะพิกัดของแถว เช่น B$2) และการอ้างอิงแบบสัมพัทธ์สำหรับเซลล์สุดท้าย:
=SMALL($B$2:$B$10, ROWS(B$2:B2))
ด้วยเหตุนี้ ช่วง การอ้างอิงจะขยายออกเมื่อคัดลอกสูตรลงในคอลัมน์ ใน D2 ROWS(B$2:B2) สร้าง 1 สำหรับ k และสูตรจะส่งกลับต้นทุนที่ต่ำที่สุด ใน D3 ROWS(B$2:B3) ให้ผลตอบแทน 2 และเราได้ต้นทุนต่ำสุดเป็นอันดับ 2 เป็นต้น
เพียงคัดลอกสูตรผ่านเซลล์ 5 เซลล์ และคุณจะได้ค่า 5 ล่างสุด:<3
รวมค่า N ด้านล่าง
ต้องการหาค่า n ที่น้อยที่สุดทั้งหมดในชุดข้อมูลหรือไม่ หากคุณแยกค่าตามที่แสดงในตัวอย่างก่อนหน้านี้แล้ว วิธีแก้ไขที่ง่ายที่สุดคือสูตร SUM เช่น:
=SUM(E3:E5)
หรือคุณจะ สร้างสูตรอิสระโดยใช้ฟังก์ชัน SMALL ร่วมกับ SUMPRODUCT:
SUMPRODUCT(SMALL( array , {1, …, n }))เพื่อให้ได้ผลรวมของค่า 3 ค่าล่างสุดในชุดข้อมูลของเรา สูตรจะใช้รูปแบบนี้ :
=SUMPRODUCT(SMALL(B2:B10, {1,2,3}))
ฟังก์ชัน SUM จะให้ผลลัพธ์เดียวกัน:
=SUM(SMALL(B2:B10, {1,2,3}))
หมายเหตุ หากคุณใช้ การอ้างอิงเซลล์ แทนที่จะใช้ค่าคงที่อาร์เรย์สำหรับ k คุณต้องกด Ctrl + Shift + Enter เพื่อทำให้เป็นสูตรอาร์เรย์ ใน Excel 365 ที่รองรับอาร์เรย์แบบไดนามิก SUM SMALL จะทำงานเป็นสูตรปกติในทั้งสองกรณี
สูตรนี้ทำงานอย่างไร:
ในสูตรปกติ SMALL จะส่งกลับค่าที่เล็กที่สุดลำดับที่ k ค่าเดียวในช่วง ในกรณีนี้ เราใส่ค่าคงที่อาร์เรย์ เช่น {1,2,3} สำหรับอาร์กิวเมนต์ k โดยบังคับให้ส่งคืนอาร์เรย์ที่มีค่าน้อยที่สุด 3 ค่า:
{29240, 43610, 58860}
The SUMPRODUCT หรือ ฟังก์ชัน SUM เพิ่มจำนวนในอาร์เรย์และแสดงผลรวม แค่นั้นแหละ!
สูตร INDEX MATCH SMALL เพื่อให้ได้ค่าที่ตรงกันน้อยที่สุด
ในสถานการณ์ที่คุณต้องการดึงข้อมูลบางอย่างที่เกี่ยวข้องกับค่าที่น้อยที่สุด ให้ใช้ค่าผสม INDEX MATCH แบบคลาสสิกกับค่า SMALL สำหรับค่าการค้นหา :
INDEX( return_array , MATCH(SMALL( lookup_array , n ), lookup_array , 0))ที่ไหน :
- Return_array เป็นช่วงที่จะดึงข้อมูลที่เกี่ยวข้องออกมา
- Lookup_array เป็นช่วงที่จะค้นหา n ต่ำสุด ค่า -th
- N คือตำแหน่งของค่าดอกเบี้ยที่น้อยที่สุด
สำหรับตัวอย่าง เพื่อให้ได้ชื่อโครงการที่มีต้นทุนต่ำที่สุด สูตรใน E3 คือ:
=INDEX($A$2:$A$10, MATCH(SMALL($B$2:$B$10, D3), $B$2:$B$10, 0))
โดยที่ A2:A10 คือชื่อโครงการ B2:B10 คือต้นทุน และ D3 คืออันดับจากค่าที่เล็กที่สุด
คัดลอกสูตรไปยังเซลล์ด้านล่าง (E4 และ E5) แล้วคุณจะได้ชื่อโครงการที่ถูกที่สุด 3 โครงการ:
หมายเหตุ:
- โซลูชันนี้ใช้ได้ดีกับชุดข้อมูลที่ไม่มีการซ้ำกัน อย่างไรก็ตาม ค่าที่ซ้ำกันตั้งแต่สองค่าขึ้นไปในคอลัมน์ตัวเลขอาจสร้าง "ความสัมพันธ์" ในการจัดอันดับ ซึ่งจะนำไปสู่ผลลัพธ์ที่ไม่ถูกต้อง ในกรณีนี้ โปรดใช้สูตรที่ซับซ้อนขึ้นอีกเล็กน้อยเพื่อตัดความสัมพันธ์
- ใน Excel 365 งานนี้สามารถทำได้โดยใช้ฟังก์ชันไดนามิกอาร์เรย์ใหม่ นอกเหนือจากวิธีการที่ง่ายกว่ามากแล้ว วิธีนี้ยังช่วยแก้ปัญหาความสัมพันธ์โดยอัตโนมัติ สำหรับรายละเอียดทั้งหมด โปรดดูวิธีกรองค่า N ด้านล่างใน Excel
เรียงลำดับตัวเลขจากต่ำสุดไปสูงสุดด้วยสูตร
ฉันเชื่อว่าทุกคนรู้วิธีจัดเรียงตัวเลขด้วย คุณสมบัติการเรียงลำดับของ Excel แต่คุณรู้วิธีการเรียงลำดับด้วยสูตรหรือไม่? ผู้ใช้ Excel 365 สามารถทำได้ง่ายๆ ด้วยฟังก์ชัน SORT ใหม่ ใน Excel 2019, 2016 และเวอร์ชันก่อนหน้า SORT ไม่ทำงาน อนิจจา แต่มีศรัทธาเล็กน้อย แล้ว SMALL จะเข้ามาช่วยเหลือ :)
เช่นเดียวกับในตัวอย่างแรก เราใช้ฟังก์ชัน ROWS กับการอ้างอิงช่วงที่ขยายเพื่อเพิ่ม k ทีละ 1 ในทุกๆ แถวที่สูตรถูกคัดลอก:
=SMALL($A$2:$A$10, ROWS(A$2:A2))
ป้อนสูตรในเซลล์แรก จากนั้นลากลงไปตามจำนวนเซลล์ที่มีค่าในชุดข้อมูลต้นฉบับ (C2:C10 ในตัวอย่างนี้) :
เคล็ดลับ ในการเรียงลำดับ จากมากไปน้อย ให้ใช้ฟังก์ชัน LARGE แทน SMALL
สูตร Excel SMALL สำหรับวันที่และเวลา
เนื่องจากวันที่และเวลาเป็นค่าตัวเลขเช่นกัน (ในระบบ Excel ภายใน วันที่จะถูกจัดเก็บเป็นตัวเลขต่อเนื่องและเวลาเป็นเศษส่วนทศนิยม) ฟังก์ชัน SMALL จึงสามารถจัดการได้ โดยที่คุณไม่ต้องพยายามมากเป็นพิเศษ
อย่างที่คุณเห็นในภาพหน้าจอด้านล่าง สูตรพื้นฐานที่เราใช้กับตัวเลขก็ใช้ได้อย่างสวยงามสำหรับวันที่และเวลาเช่นกัน:
=SMALL($B$2:$B$10, D2)
สูตร SMALL เพื่อหา 3 วันที่เร็วที่สุด:
สูตร SMALL เพื่อหา 3 วันที่เร็วที่สุด:
ตัวอย่างถัดไปแสดงให้เห็นว่าฟังก์ชัน SMALL สามารถช่วยให้คุณทำงานที่เกี่ยวข้องกับวันที่ให้สำเร็จได้อย่างไร
ค้นหาวันที่ก่อนหน้าที่ใกล้เคียงกับวันนี้หรือวันที่ที่ระบุมากที่สุด
ในรายการวันที่ สมมติว่าคุณต้องการค้นหาวันที่ที่ใกล้ที่สุดก่อนวันที่ที่ระบุ ซึ่งสามารถทำได้โดยใช้ฟังก์ชัน SMALL ร่วมกับ COUNTIF
ด้วยรายการวันที่ใน B2:B10 และวันที่เป้าหมายใน E1 สูตรต่อไปนี้จะส่งกลับวันที่ก่อนหน้าที่ใกล้เคียงกับวันที่เป้าหมายมากที่สุด:
=SMALL(B2:B10, COUNTIF(B2:B10, "<"&E1))
หากต้องการแยกวันที่ที่เป็นสองวันก่อนวันที่ใน E1 นั่นคือวันที่ก่อนหน้าแต่มีวันที่เดียวสูตรคือ:
=SMALL(B2:B10, COUNTIF(B2:B10, "<"&E1)-1)
หากต้องการค้นหาวันที่ที่ผ่านมา ใกล้เคียงกับวันนี้มากที่สุด ให้ใช้ฟังก์ชัน TODAY สำหรับเกณฑ์ของ COUNTIF:<3
=SMALL(B2:B10, COUNTIF(B2:B10, "<"&TODAY()))
เคล็ดลับ เพื่อป้องกันข้อผิดพลาดในสถานการณ์เมื่อไม่พบวันที่ที่ตรงกับเกณฑ์ของคุณ คุณสามารถใส่ฟังก์ชัน IFERROR รอบสูตรของคุณได้ดังนี้:
=IFERROR(SMALL(B2:B10, COUNTIF(B2:B10, "<"&E1)-1), "Not Found")
วิธีการทำงานของสูตรเหล่านี้:
แนวคิดทั่วไปคือการนับจำนวนวันที่น้อยกว่าวันที่เป้าหมายด้วย COUNTIF และการนับนี้เป็นสิ่งที่ฟังก์ชัน SMALL ต้องการสำหรับอาร์กิวเมนต์ k
เพื่อให้เข้าใจแนวคิดได้ดีขึ้น ลองดูจากมุมอื่น:
ถ้า 1- ส.ค. 2020 (วันที่เป้าหมายใน E1) ปรากฏในชุดข้อมูลของเรา ซึ่งจะเป็นวันที่ใหญ่เป็นอันดับ 7 ในรายการ ดังนั้นจึงมีหกวันที่เล็กกว่านั้น ความหมาย วันที่ที่เล็กที่สุดลำดับที่ 6 คือวันที่ก่อนหน้าซึ่งใกล้เคียงกับวันที่เป้าหมายมากที่สุด
ดังนั้น ก่อนอื่น เราจะคำนวณจำนวนวันที่ที่เล็กกว่าวันที่ใน E1 (ผลลัพธ์คือ 6):
COUNTIF(B2:B10, "<"&E1)
จากนั้น เสียบจำนวนลงในอาร์กิวเมนต์ตัวที่ 2 ของ SMALL:
=SMALL(B2:B10, 6)
เพื่อรับวันที่ก่อนหน้าแต่มีวันที่เดียว (ซึ่งเป็นวันที่ที่เล็กที่สุดลำดับที่ 5 ในกรณีของเรา) เราลบ 1 ออกจากผลลัพธ์ของ COUNTIF
วิธีเน้นค่าด้านล่างใน Excel
หากต้องการเน้นค่า n ที่น้อยที่สุดในตารางของคุณด้วยการจัดรูปแบบตามเงื่อนไขของ Excel คุณสามารถใช้ตัวบนสุด /ตัวเลือกด้านล่างหรือตั้งค่ากฎของคุณเองตามสูตรขนาดเล็ก วิธีแรกเร็วกว่าและใช้งานได้ง่ายขึ้น ในขณะที่แบบที่สองให้การควบคุมและความยืดหยุ่นที่มากกว่า ขั้นตอนด้านล่างจะแนะนำคุณเกี่ยวกับการสร้างกฎที่กำหนดเอง:
- เลือกช่วงที่คุณต้องการเน้นค่าต่ำสุด ในกรณีของเรา ตัวเลขอยู่ใน B2:B10 ดังนั้นเราจึงเลือก หากคุณต้องการเน้นทั้งแถว ให้เลือก A2:B10
- ในแท็บ หน้าแรก ในกลุ่ม สไตล์ คลิก การจัดรูปแบบตามเงื่อนไข > กฎใหม่ .
- ในกล่องโต้ตอบ กฎการจัดรูปแบบใหม่ เลือก ใช้สูตรเพื่อกำหนดเซลล์ที่จะจัดรูปแบบ<2
- ในช่อง จัดรูปแบบค่าโดยที่สูตรนี้เป็นจริง ให้ป้อนสูตรดังนี้:
=B2<=SMALL($B$2:$B$10, 3)
โดยที่ B2 คือเซลล์ซ้ายสุดของตัวเลข ช่วงที่ต้องตรวจสอบ $B$2:$B$10 คือช่วงทั้งหมด และ 3 คือ n ค่าล่างสุดที่จะเน้น
ในสูตรของคุณ โปรดคำนึงถึงประเภทการอ้างอิง: the เซลล์ซ้ายสุดเป็นการอ้างอิงแบบสัมพัทธ์ (B2) ในขณะที่ช่วงเป็นการอ้างอิงแบบสัมบูรณ์ ($B$2:$B$10)
- คลิกปุ่ม รูปแบบ และเลือกรูปแบบใดก็ได้ที่คุณต้องการ
- คลิก ตกลง สองครั้งเพื่อปิดหน้าต่างโต้ตอบทั้งสอง
เสร็จแล้ว! ค่า 3 ค่าล่างสุดในคอลัมน์ B ถูกเน้น:
สำหรับข้อมูลเพิ่มเติม โปรดดูการจัดรูปแบบตามเงื่อนไขของ Excel ตามสูตร
ฟังก์ชัน Excel SMALL ไม่ทำงาน
ตามที่คุณได้เห็นจากตัวอย่างของเรา การใช้ฟังก์ชัน SMALL ใน Excel นั้นค่อนข้างง่าย และคุณไม่น่าจะมีปัญหากับมัน หากสูตรของคุณใช้ไม่ได้ เป็นไปได้มากว่าจะเป็น #NUM! ข้อผิดพลาด ซึ่งอาจเกิดขึ้นเนื่องจากสาเหตุต่อไปนี้:
- อาร์เรย์ ว่างเปล่าหรือไม่มีค่าตัวเลขเดียว
- ปุ่ม k ค่าน้อยกว่าศูนย์ (การพิมพ์ผิดอาจทำให้คุณเสียเวลาแก้ปัญหาหลายชั่วโมง!) หรือเกินจำนวนค่าในอาร์เรย์
นั่นคือวิธีการใช้สูตร SMALL ใน Excel เพื่อค้นหาและ เน้นเลขล่างในชุดข้อมูล หากคุณทราบสถานการณ์อื่นๆ ที่ฟังก์ชันนี้มีประโยชน์ คุณสามารถแสดงความคิดเห็นได้ ฉันขอขอบคุณที่อ่านและหวังว่าจะได้พบคุณในบล็อกของเราในสัปดาห์หน้า!
คู่มือแบบฝึกหัดสำหรับการดาวน์โหลด
ตัวอย่างสูตร Excel SMALL (ไฟล์ .xlsx)