สารบัญ
บทช่วยสอนแสดงวิธีการนับจำนวนเซลล์ที่มีข้อความเฉพาะใน Excel คุณจะพบตัวอย่างสูตรสำหรับการจับคู่แบบตรงทั้งหมด การจับคู่บางส่วน และเซลล์ที่กรอง
สัปดาห์ที่แล้ว เราได้ดูวิธีนับเซลล์ที่มีข้อความใน Excel ซึ่งหมายถึงเซลล์ทั้งหมดที่มีข้อความใดๆ เมื่อวิเคราะห์ข้อมูลจำนวนมาก คุณอาจต้องการทราบจำนวนเซลล์ที่มีข้อความเฉพาะเจาะจง บทช่วยสอนนี้อธิบายวิธีการทำด้วยวิธีง่ายๆ
วิธีนับเซลล์ที่มีข้อความเฉพาะใน Excel
Microsoft Excel มีฟังก์ชันพิเศษในการนับเซลล์แบบมีเงื่อนไข ฟังก์ชัน COUNTIF สิ่งที่คุณต้องทำคือใส่สตริงข้อความเป้าหมายในอาร์กิวเมนต์ เกณฑ์
นี่คือสูตร Excel ทั่วไปเพื่อนับจำนวนเซลล์ที่มีข้อความเฉพาะ:
COUNTIF(range, " ข้อความ")ตัวอย่างต่อไปนี้แสดงการทำงาน สมมติว่าคุณมีรายการรหัสสินค้าใน A2:A10 และคุณต้องการนับจำนวนเซลล์ที่มีรหัสเฉพาะ ให้พูดว่า "AA-01" พิมพ์สตริงนี้ในอาร์กิวเมนต์ที่สอง และคุณจะได้สูตรอย่างง่ายนี้:
=COUNTIF(A2:A10, "AA-01")
เพื่อให้ผู้ใช้ของคุณสามารถนับเซลล์ที่มีข้อความที่กำหนดโดยไม่จำเป็นต้องแก้ไขสูตร ให้ป้อน ข้อความในเซลล์ที่กำหนดไว้ล่วงหน้า เช่น D1 และระบุการอ้างอิงเซลล์:
=COUNTIF(A2:A10, D1)
หมายเหตุ ฟังก์ชัน Excel COUNTIF ไม่คำนึงถึงตัวพิมพ์เล็กและใหญ่ หมายความว่าฟังก์ชันนี้จะไม่แยกตัวพิมพ์เล็กและใหญ่ เพื่อรักษาตัวพิมพ์ใหญ่และตัวพิมพ์เล็กอักขระต่างกัน ให้ใช้สูตรที่คำนึงถึงตัวพิมพ์เล็กและใหญ่นี้
วิธีนับเซลล์ที่มีข้อความเฉพาะ (ตรงบางส่วน)
สูตรที่กล่าวถึงในตัวอย่างก่อนหน้านี้ตรงกับเกณฑ์ทุกประการ หากมีอย่างน้อยหนึ่งอักขระที่แตกต่างกันในเซลล์ เช่น ช่องว่างเพิ่มเติมในตอนท้าย จะไม่ตรงกันทั้งหมดและเซลล์ดังกล่าวจะไม่ถูกนับ
หากต้องการค้นหาจำนวนของ เซลล์ที่มีข้อความบางส่วนเป็นส่วนหนึ่งของเนื้อหา ให้ใช้อักขระตัวแทนในเกณฑ์ของคุณ ได้แก่ เครื่องหมายดอกจัน (*) ที่แสดงถึงลำดับหรืออักขระใดๆ ขึ้นอยู่กับเป้าหมายของคุณ สูตรอาจมีลักษณะดังต่อไปนี้
นับเซลล์ที่มีข้อความเฉพาะที่ เริ่มต้นมาก :
COUNTIF(ช่วง " ข้อความ *")นับเซลล์ที่มีข้อความเฉพาะใน ตำแหน่งใดก็ได้ :
ตัวอย่างเช่น หากต้องการหาจำนวนเซลล์ในช่วง A2:A10 ที่ขึ้นต้นด้วย "AA" ให้ใช้สูตรนี้:
=COUNTIF(A2:A10, "AA*")
หากต้องการดูจำนวนเซลล์ที่มี "AA" ในตำแหน่งใดๆ ให้ใช้สิ่งนี้ หนึ่ง:
=COUNTIF(A2:A10, "*AA*")
หากต้องการทำให้สูตรไดนามิกมากขึ้น ให้แทนที่สตริงฮาร์ดโค้ดด้วยการอ้างอิงเซลล์
หากต้องการนับเซลล์ที่ขึ้นต้นด้วยข้อความบางข้อความ:
=COUNTIF(A2:A10, D1&"*")
ในการนับเซลล์ที่มีข้อความเฉพาะที่ใดก็ได้:
=COUNTIF(A2:A10, "*"&D1&"*")
ภาพหน้าจอด้านล่างแสดงผลลัพธ์:
นับเซลล์ที่มีข้อความเฉพาะ (คำนึงถึงตัวพิมพ์เล็กและใหญ่)
ในสถานการณ์ที่คุณต้องการแยกความแตกต่างอักขระตัวพิมพ์ใหญ่และตัวพิมพ์เล็ก ฟังก์ชัน COUNTIF จะไม่ทำงาน ขึ้นอยู่กับว่าคุณกำลังมองหาการจับคู่แบบตรงทั้งหมดหรือบางส่วน คุณจะต้องสร้างสูตรอื่น
สูตรที่คำนึงถึงตัวพิมพ์เล็กและใหญ่เพื่อนับเซลล์ที่มีข้อความเฉพาะ (ตรงทั้งหมด)
ในการนับ จำนวนเซลล์ที่มีข้อความบางอย่างที่รู้จักตัวพิมพ์ข้อความ เราจะใช้ฟังก์ชัน SUMPRODUCT และ EXACT ร่วมกัน:
SUMPRODUCT(--EXACT(" text ", range ))วิธีการทำงานของสูตรนี้:
- EXACT เปรียบเทียบแต่ละเซลล์ในช่วงกับข้อความตัวอย่างและส่งกลับอาร์เรย์ของค่า TRUE และ FALSE โดย TRUE แสดงถึงข้อมูลที่ตรงกันทุกประการ และเป็น FALSE เซลล์อื่นๆ ทั้งหมด ยัติภังค์คู่ (เรียกว่า double unary ) บังคับให้ TRUE และ FALSE เป็น 1 และ 0
- SUMPRODUCT รวมองค์ประกอบทั้งหมดของอาร์เรย์ ผลรวมนั้นคือจำนวน 1 ซึ่งเป็นจำนวนที่ตรงกัน
ตัวอย่างเช่น หากต้องการหาจำนวนเซลล์ใน A2:A10 ที่มีข้อความใน D1 และจัดการตัวพิมพ์ใหญ่และตัวพิมพ์เล็กให้ต่างกัน อักขระ ให้ใช้สูตรนี้:
=SUMPRODUCT(--EXACT(D1, A2:A10))
สูตรที่คำนึงถึงตัวพิมพ์เล็กและใหญ่เพื่อนับเซลล์ที่มีข้อความเฉพาะ (ตรงกันบางส่วน)
ในการสร้าง สูตรที่คำนึงถึงตัวพิมพ์เล็กและใหญ่ที่สามารถค้นหาสตริงข้อความที่สนใจได้ทุกที่ในเซลล์ เรากำลังใช้ฟังก์ชันที่แตกต่างกัน 3 ฟังก์ชัน:
SUMPRODUCT(--(ISNUMBER(FIND(" text ", ช่วง ))))สูตรนี้ทำงานอย่างไร:
- การค้นหาฟังก์ชัน FIND ที่คำนึงถึงตัวพิมพ์เล็กและใหญ่สำหรับข้อความเป้าหมายในแต่ละเซลล์ของช่วง หากสำเร็จ ฟังก์ชันจะส่งกลับตำแหน่งของอักขระตัวแรก มิฉะนั้นจะส่ง #VALUE! ข้อผิดพลาด. เพื่อความชัดเจน เราไม่จำเป็นต้องทราบตำแหน่งที่แน่นอน ตัวเลขใดๆ (ตรงข้ามกับข้อผิดพลาด) หมายความว่าเซลล์นั้นมีข้อความเป้าหมาย
- ฟังก์ชัน ISNUMBER จัดการอาร์เรย์ของตัวเลขและข้อผิดพลาดที่ส่งกลับ โดย FIND และแปลงตัวเลขเป็น TRUE และอย่างอื่นเป็น FALSE เลขตัวเดียวคู่ (--) บังคับค่าตรรกะให้เป็นเลขหนึ่งและเลขศูนย์
- SUMPRODUCT จะรวมอาร์เรย์ของ 1 และ 0 และส่งคืนจำนวนเซลล์ที่มีข้อความที่ระบุซึ่งเป็นส่วนหนึ่งของเนื้อหา
ในการทดสอบสูตรกับข้อมูลในชีวิตจริง ลองหาจำนวนเซลล์ใน A2:A10 ที่มีอินพุตสตริงย่อยใน D1:
=SUMPRODUCT(--(ISNUMBER(FIND(D1, A2:A10))))
และสิ่งนี้จะส่งกลับค่าการนับ จาก 3 (เซลล์ A2, A3 และ A6):
วิธีนับเซลล์ที่กรองด้วยข้อความเฉพาะ
วิธีนับ รายการที่มองเห็นได้ ในรายการที่กรอง คุณจะต้องใช้ฟังก์ชัน 4 ฟังก์ชันขึ้นไปรวมกัน ขึ้นอยู่กับว่าคุณต้องการการจับคู่แบบตรงทั้งหมดหรือบางส่วน เพื่อให้ทำตามตัวอย่างได้ง่ายขึ้น มาดูข้อมูลต้นฉบับกันก่อน
สมมติว่าคุณมีตารางที่มี รหัสคำสั่งซื้อ ในคอลัมน์ B และ ปริมาณ ในคอลัมน์ C ดังภาพด้านล่าง ในขณะนี้ คุณสนใจเฉพาะในปริมาณที่มากกว่า 1 และคุณได้กรองตารางของคุณตามนั้น เดอะคำถามคือ คุณจะนับเซลล์ที่กรองด้วยรหัสเฉพาะได้อย่างไร
สูตรเพื่อนับเซลล์ที่กรองด้วยข้อความเฉพาะ (ตรงทั้งหมด)
นับจำนวนที่กรอง เซลล์ที่มีเนื้อหาตรงกับสตริงข้อความตัวอย่างทุกประการ ให้ใช้หนึ่งในสูตรต่อไปนี้:
=SUMPRODUCT(SUBTOTAL(103, INDIRECT("A"&ROW(A2:A10))), --(B2:B10=F1))
=SUMPRODUCT(SUBTOTAL(103, OFFSET(A2:A10, ROW(A2:A10) - MIN(ROW(A2:A10)),,1)), --(B2:B10=F1))
โดยที่ F1 คือข้อความตัวอย่าง และ B2:B10 คือเซลล์ เพื่อนับ
สูตรเหล่านี้ทำงานอย่างไร:
ที่แกนหลักของทั้งสองสูตร คุณทำการตรวจสอบ 2 อย่าง:
- ระบุแถวที่มองเห็นและซ่อนไว้ สำหรับสิ่งนี้ คุณใช้ฟังก์ชัน SUBTOTAL โดยมีอาร์กิวเมนต์ function_num ตั้งค่าเป็น 103 หากต้องการให้การอ้างอิงเซลล์แต่ละเซลล์ทั้งหมดเป็น SUBTOTAL ให้ใช้ INDIRECT (ในสูตรแรก) หรือผสมกันระหว่าง OFFSET, ROW และ MIN (ในสูตรที่สอง). เนื่องจากเรามุ่งมั่นที่จะค้นหาแถวที่มองเห็นและซ่อนไว้ จึงไม่สำคัญว่าจะอ้างอิงคอลัมน์ใด (A ในตัวอย่างของเรา) ผลลัพธ์ของการดำเนินการนี้คืออาร์เรย์ของ 1 และ 0 โดยที่ค่าแทนแถวที่มองเห็นและศูนย์ - แถวที่ซ่อนอยู่
- ค้นหาเซลล์ที่มีข้อความที่กำหนด สำหรับสิ่งนี้ ให้เปรียบเทียบข้อความตัวอย่าง (F1) กับช่วงของเซลล์ (B2:B10) ผลลัพธ์ของการดำเนินการนี้คืออาร์เรย์ของค่า TRUE และ FALSE ซึ่งถูกบังคับให้เป็น 1 และ 0 ด้วยความช่วยเหลือของตัวดำเนินการเอกภาพคู่
สุดท้าย ฟังก์ชัน SUMPRODUCT จะคูณองค์ประกอบของทั้งสอง อาร์เรย์ในตำแหน่งเดียวกัน แล้วรวมผลลัพธ์ของอาร์เรย์เนื่องจากการคูณด้วยศูนย์จะให้ศูนย์ เฉพาะเซลล์ที่มี 1 ในอาร์เรย์ทั้งสองเท่านั้นที่มี 1 ในอาร์เรย์สุดท้าย ผลรวมของ 1 คือจำนวนเซลล์กรองที่มีข้อความที่ระบุ
สูตรเพื่อนับเซลล์กรองที่มีข้อความเฉพาะ (ตรงกันบางส่วน)
นับเซลล์กรองที่มีข้อความบางส่วนเป็นส่วนหนึ่งของ เนื้อหาของเซลล์ แก้ไขสูตรข้างต้นด้วยวิธีต่อไปนี้ แทนที่จะเปรียบเทียบข้อความตัวอย่างกับช่วงของเซลล์ ให้ค้นหาข้อความเป้าหมายโดยใช้ ISNUMBER และ FIND ตามที่อธิบายไว้ในตัวอย่างก่อนหน้านี้:
=SUMPRODUCT(SUBTOTAL(103, INDIRECT("A"&ROW(A2:A10))), --(ISNUMBER(FIND(F1, B2:B10))))
=SUMPRODUCT(SUBTOTAL(103, OFFSET(A2:A10, ROW(A2:A10) - MIN(ROW(A2:A10)),,1)), --(ISNUMBER(FIND(F1, B2:B10))))
ด้วยเหตุนี้ สูตรจะค้นหาสตริงข้อความที่กำหนดในตำแหน่งใดก็ได้ในเซลล์:
หมายเหตุ ฟังก์ชัน SUBTOTAL ที่มี 103 ในอาร์กิวเมนต์ function_num ระบุเซลล์ที่ซ่อนอยู่ทั้งหมด กรองออกและซ่อนด้วยตนเอง ด้วยเหตุนี้ สูตรข้างต้นจึงนับเฉพาะ เซลล์ที่มองเห็นได้ โดยไม่คำนึงว่าเซลล์ที่มองไม่เห็นถูกซ่อนไว้อย่างไร หากต้องการแยกเฉพาะเซลล์ที่กรองออก แต่รวมเซลล์ที่ซ่อนด้วยตนเอง ให้ใช้ 3 สำหรับ function_num
นั่นคือวิธีการนับจำนวนเซลล์ที่มีข้อความบางอย่างใน Excel ฉันขอขอบคุณสำหรับการอ่านและหวังว่าจะได้พบคุณในบล็อกของเราในสัปดาห์หน้า!
ดาวน์โหลดได้
สูตร Excel สำหรับนับเซลล์ที่มีข้อความเฉพาะ