Excel VLOOKUP พร้อมฟังก์ชัน SUM หรือ SUMIF – ตัวอย่างสูตร

  • แบ่งปันสิ่งนี้
Michael Brown

ในบทช่วยสอนนี้ คุณจะพบตัวอย่างสูตรขั้นสูงจำนวนหนึ่งที่สาธิตวิธีใช้ฟังก์ชัน VLOOKUP และ SUM หรือ SUMIF ของ Excel เพื่อค้นหาและรวมค่าตามเกณฑ์หนึ่งหรือหลายเกณฑ์

คุณกำลังพยายามสร้างไฟล์สรุปใน Excel ที่จะระบุอินสแตนซ์ทั้งหมดของค่าใดค่าหนึ่ง แล้วรวมค่าอื่นๆ ที่เชื่อมโยงกับอินสแตนซ์เหล่านั้นหรือไม่ หรือคุณต้องการหาค่าทั้งหมดในอาร์เรย์ที่ตรงตามเงื่อนไขที่คุณระบุ แล้วรวมค่าที่เกี่ยวข้องจากเวิร์กชีตอื่นหรือไม่ หรือบางทีคุณอาจเผชิญกับความท้าทายที่เป็นรูปธรรมมากขึ้น เช่น การดูตารางใบแจ้งหนี้ของบริษัท ระบุใบแจ้งหนี้ทั้งหมดของผู้จำหน่ายรายใดรายหนึ่ง แล้วสรุปมูลค่าใบแจ้งหนี้ทั้งหมด

งานอาจแตกต่างกันไป แต่ สาระสำคัญเหมือนกัน - คุณต้องการค้นหาและรวมค่าด้วยเกณฑ์หนึ่งหรือหลายเกณฑ์ใน Excel ค่านิยมแบบไหน? ค่าตัวเลขใดๆ หลักเกณฑ์ประเภทใด? ใดๆ : ) เริ่มต้นจากตัวเลขหรือการอ้างอิงไปยังเซลล์ที่มีค่าที่ถูกต้อง และลงท้ายด้วยตัวดำเนินการเชิงตรรกะและผลลัพธ์ที่ส่งคืนโดยสูตร Excel

ดังนั้น Microsoft Excel มีฟังก์ชันการทำงานใดบ้างที่สามารถช่วยงานข้างต้นได้ ? แน่นอน มันไม่! คุณสามารถหาทางออกได้โดยการรวม VLOOKUP หรือ LOOKUP ของ Excel เข้ากับฟังก์ชัน SUM หรือ SUMIF ตัวอย่างสูตรต่อไปนี้จะช่วยให้คุณเข้าใจวิธีการทำงานของฟังก์ชัน Excel และวิธีการนำไปใช้เวอร์ชันทดลองโดยใช้ลิงก์ด้านล่าง

มีให้ดาวน์โหลด

VLOOKUP พร้อม SUM และ SUMIF - ตัวอย่างสูตร (ไฟล์ .xlsx)

Ultimate Suite - เวอร์ชันทดลอง (ไฟล์ .exe )

กับข้อมูลจริง

โปรดทราบว่า นี่เป็นตัวอย่างขั้นสูงที่แสดงเป็นนัยว่าคุณคุ้นเคยกับหลักการทั่วไปและไวยากรณ์ของฟังก์ชัน VLOOKUP ถ้าไม่ใช่ ส่วนแรกของบทช่วยสอน VLOOKUP สำหรับผู้เริ่มต้นก็คุ้มค่ากับความสนใจของคุณอย่างแน่นอน - ไวยากรณ์ของ Excel VLOOKUP และการใช้งานทั่วไป

    Excel VLOOKUP และ SUM - หาผลรวมของค่าที่ตรงกัน

    หากคุณทำงานกับข้อมูลตัวเลขใน Excel บ่อยครั้งที่คุณไม่เพียงต้องแยกค่าที่เกี่ยวข้องจากตารางอื่น แต่ยังต้องรวมตัวเลขในหลายคอลัมน์หรือหลายแถวด้วย ในการดำเนินการนี้ คุณสามารถใช้ฟังก์ชัน SUM และ VLOOKUP ร่วมกันดังที่แสดงด้านล่าง

    แหล่งข้อมูล:

    สมมติว่า คุณมีรายการผลิตภัณฑ์ที่มียอดขาย เป็นเวลาหลายเดือน หนึ่งคอลัมน์ต่อเดือน ข้อมูลต้นฉบับอยู่ในแผ่นงานชื่อ ยอดขายรายเดือน :

    ตอนนี้ คุณต้องการสร้างตารางสรุปที่มียอดขายรวมสำหรับแต่ละผลิตภัณฑ์

    วิธีแก้ปัญหาคือใช้อาร์เรย์ในพารามิเตอร์ตัวที่ 3 ( col_index_num ) ของฟังก์ชัน Excel VLOOKUP นี่คือสูตรทั่วไป:

    SUM(VLOOKUP( ค่าการค้นหา, ช่วงการค้นหา, {2,3,...,n}, FALSE))

    เป็น คุณเห็นไหมว่า เราใช้ค่าคงที่อาร์เรย์ในอาร์กิวเมนต์ที่สามเพื่อทำการค้นหาหลายรายการภายในสูตร VLOOKUP เดียวกัน เพื่อให้ได้ผลรวมของค่าในคอลัมน์ 2,3 และ 4

    และตอนนี้ เรามาปรับค่าผสมนี้กัน ของฟังก์ชัน VLOOKUP และ SUM สำหรับข้อมูลของเราเพื่อหาผลรวมของการขายในคอลัมน์ B - M ในตารางด้านบน:

    =SUM(VLOOKUP(B2, 'Monthly sales'! $A$2:$M$9, {2,3,4,5,6,7,8,9,10,11,12,13}, FALSE))

    สำคัญ! เนื่องจากคุณกำลังสร้างสูตรอาร์เรย์ อย่าลืมกด Ctrl + Shift + Enter แทน ของการกดแป้น Enter แบบธรรมดาเมื่อคุณพิมพ์เสร็จ เมื่อคุณทำเช่นนี้ Microsoft Excel จะล้อมรอบสูตรของคุณด้วยวงเล็บปีกกาในลักษณะนี้:

    {=SUM(VLOOKUP(B2, 'Monthly sales'!$A$2:$M$9, {2,3,4,5,6,7,8,9,10,11,12,13}, FALSE))}

    หากคุณกดปุ่ม Enter ตามปกติ เฉพาะค่าแรกใน อาร์เรย์จะได้รับการประมวลผล ซึ่งจะให้ผลลัพธ์ที่ไม่ถูกต้อง

    เคล็ดลับ คุณอาจสงสัยว่าเหตุใดสูตรจึงแสดง [@Product] เป็นค่าการค้นหาในภาพหน้าจอด้านบน นี่เป็นเพราะฉันแปลงข้อมูลเป็นตาราง ( แทรก แท็บ > ตาราง ) ฉันพบว่าสะดวกมากในการทำงานกับตาราง Excel ที่ทำงานได้อย่างสมบูรณ์และการอ้างอิงที่มีโครงสร้าง ตัวอย่างเช่น เมื่อคุณพิมพ์สูตรลงในเซลล์เดียว Excel จะคัดลอกสูตรนั้นไปทั่วทั้งคอลัมน์โดยอัตโนมัติ และวิธีนี้ช่วยให้คุณประหยัดเวลาอันมีค่าได้ไม่กี่วินาที :)

    อย่างที่คุณเห็น การใช้ฟังก์ชัน VLOOKUP และ SUM ใน Excel เป็นเรื่องง่าย อย่างไรก็ตาม นี่ไม่ใช่ทางออกที่ดี โดยเฉพาะถ้าคุณทำงานกับโต๊ะขนาดใหญ่ ประเด็นคือการใช้สูตรอาร์เรย์อาจส่งผลเสียต่อประสิทธิภาพของสมุดงาน เนื่องจากแต่ละค่าในอาร์เรย์ทำการเรียกฟังก์ชัน VLOOKUP แยกกัน ดังนั้น ยิ่งคุณมีค่ามากในอาร์เรย์และยิ่งมีสูตรอาร์เรย์ในสมุดงานมากเท่าไหร่ Excel ก็ยิ่งทำงานช้าลงเท่านั้น

    คุณสามารถข้ามปัญหานี้ได้โดยใช้การรวมกันของฟังก์ชัน INDEX และ MATCH แทนการใช้ SUM และ VLOOKUP และผมจะแสดงตัวอย่างสูตรบางส่วนในบทความถัดไป

    ดาวน์โหลดตัวอย่าง VLOOKUP และ SUM นี้

    วิธีการคำนวณอื่นๆ ด้วยฟังก์ชัน VLOOKUP ของ Excel

    เมื่อสักครู่ที่ผ่านมา เราได้พูดถึงตัวอย่างวิธีแยกค่าจากหลายคอลัมน์ในตารางค้นหาและคำนวณผลรวมของค่าเหล่านั้น ในทำนองเดียวกัน คุณสามารถทำการคำนวณทางคณิตศาสตร์อื่นๆ ด้วยผลลัพธ์ที่ส่งคืนโดยฟังก์ชัน VLOOKUP นี่คือตัวอย่างสูตรบางส่วน:

    การดำเนินการ ตัวอย่างสูตร คำอธิบาย
    คำนวณค่าเฉลี่ย {=AVERAGE(VLOOKUP(A2, 'Lookup Table'$A$2:$D$10, {2,3,4}, FALSE))} สูตรค้นหา ค่าของเซลล์ A2 ใน 'ตารางค้นหา' และคำนวณค่าเฉลี่ยของค่าในคอลัมน์ B,C และ D ในแถวเดียวกัน
    ค้นหาค่าสูงสุด { =MAX(VLOOKUP(A2, 'Lookup Table'$A$2:$D$10, {2,3,4}, FALSE))} สูตรค้นหาค่าของเซลล์ A2 ใน 'ตารางค้นหา ' และค้นหาค่าสูงสุดในคอลัมน์ B,C และ D ในแถวเดียวกัน
    ค้นหาค่าต่ำสุด {=MIN(VLOOKUP(A2, 'ตารางค้นหา '$A$2:$D$10, {2,3,4}, FALSE))} สูตรค้นหาค่าของเซลล์ A2 ใน 'ตารางค้นหา' และค้นหาค่าต่ำสุดในคอลัมน์ B C และ D ในแถวเดียวกัน
    คำนวณ % ของผลรวม {=0.3*SUM(VLOOKUP(A2, 'Lookup Table'$A$2:$D$10, {2,3,4}, FALSE))} การค้นหาสูตร สำหรับค่าของเซลล์ A2 ใน 'ตารางค้นหา' ให้รวมค่าในคอลัมน์ B,C และ D ในแถวเดียวกัน แล้วคำนวณ 30% ของผลรวม

    บันทึก. เนื่องจากสูตรข้างต้นทั้งหมดเป็นสูตรอาร์เรย์ อย่าลืมกด Ctrl+Shift+Enter เพื่อป้อนให้ถูกต้องในเซลล์

    หากเราเพิ่มสูตรข้างต้นลงในตาราง 'สรุปยอดขาย' จากตัวอย่างก่อนหน้านี้ ผลลัพธ์จะมีลักษณะดังนี้:

    ดาวน์โหลดตัวอย่างการคำนวณ VLOOKUP นี้

    การค้นหาและผลรวม - ค้นหาในอาร์เรย์และผลรวมของค่าที่ตรงกัน

    ในกรณีที่พารามิเตอร์การค้นหาของคุณเป็นอาร์เรย์แทนที่จะเป็นค่าเดียว ฟังก์ชัน VLOOKUP จะไม่มีประโยชน์เนื่องจากไม่สามารถค้นหาใน อาร์เรย์ข้อมูล ในกรณีนี้ คุณสามารถใช้ฟังก์ชัน LOOKUP ของ Excel ที่คล้ายกับ VLOOKUP แต่ใช้งานได้กับอาร์เรย์และค่าแต่ละค่า

    ลองพิจารณาตัวอย่างต่อไปนี้ เพื่อให้คุณเข้าใจสิ่งที่ฉันพูดถึงได้ดีขึ้น . สมมติว่า คุณมีตารางที่แสดงชื่อลูกค้า ผลิตภัณฑ์ที่ซื้อ และจำนวน ( ตารางหลัก ) คุณยังมีตารางที่สองที่มีราคาสินค้า ( ตารางค้นหา ) งานของคุณคือสร้างสูตรที่ค้นหายอดรวมของคำสั่งซื้อทั้งหมดที่ทำโดยลูกค้าที่กำหนด

    ตามที่คุณจำได้ คุณจะไม่สามารถใช้ฟังก์ชัน Excel VLOOKUP ได้เนื่องจากคุณมีหลายๆอินสแตนซ์ของค่าการค้นหา (อาร์เรย์ของข้อมูล) แต่ให้ใช้ฟังก์ชัน SUM และ LOOKUP ร่วมกันดังนี้:

    =SUM(LOOKUP($C$2:$C$10,'Lookup table'!$A$2:$A$16,'Lookup table'!$B$2:$B$16)*$D$2:$D$10*($B$2:$B$10=$G$1))

    เนื่องจากสูตรนี้เป็นสูตรอาร์เรย์ อย่าลืมกด Ctrl + Shift + Enter เพื่อทำให้สูตรสมบูรณ์

    และตอนนี้ เรามาวิเคราะห์ส่วนผสมของสูตร เพื่อให้คุณเข้าใจว่าแต่ละฟังก์ชันทำงานอย่างไร และสามารถปรับแต่งให้เป็นข้อมูลของคุณเองได้

    เราจะเลิกใช้ ฟังก์ชัน SUM ชั่วขณะหนึ่ง เนื่องจากจุดประสงค์ของมันชัดเจน และเน้นที่องค์ประกอบ 3 ส่วนที่มีการคูณ:

    1. LOOKUP($C$2:$C$10,'Lookup table'!$A$2:$A$16,'Lookup table'!$B$2:$B$16)

      ฟังก์ชัน LOOKUP นี้จะค้นหาสินค้าที่แสดงในคอลัมน์ C ในหลัก ตาราง และส่งกลับราคาที่สอดคล้องกันจากคอลัมน์ B ในตารางการค้นหา

    2. $D$2:$D$10

      ส่วนประกอบนี้ส่งคืนปริมาณของผลิตภัณฑ์แต่ละรายการที่ซื้อโดยลูกค้าแต่ละราย ซึ่งแสดงรายการอยู่ในคอลัมน์ D ในตารางหลัก . คูณด้วยราคาที่ส่งกลับโดยฟังก์ชัน LOOKUP ด้านบน คุณจะได้ต้นทุนของผลิตภัณฑ์ที่ซื้อแต่ละรายการ

    3. $B$2:$B$10=$G$1

      สูตรนี้เปรียบเทียบชื่อลูกค้าในคอลัมน์ B กับชื่อ ในเซลล์ G1 หากพบการจับคู่จะส่งกลับ "1" มิฉะนั้น "0" คุณใช้เพื่อ "ตัด" ชื่อลูกค้าอื่นที่ไม่ใช่ชื่อในเซลล์ G1 เนื่องจากเราทุกคนทราบดีว่าตัวเลขใดๆ ที่คูณด้วยศูนย์คือศูนย์

    เนื่องจากสูตรของเราคือ สูตรอาร์เรย์จะวนซ้ำกระบวนการที่อธิบายไว้ข้างต้นสำหรับแต่ละค่าในอาร์เรย์การค้นหา และสุดท้าย ฟังก์ชัน SUM หาผลรวมผลคูณของการคูณทั้งหมด ไม่มีอะไรยากเลยใช่ไหม

    หมายเหตุ เพื่อให้สูตร LOOKUP ทำงานได้อย่างถูกต้อง คุณต้องจัดเรียงคอลัมน์การค้นหาในตารางการค้นหาของคุณตามลำดับจากน้อยไปมาก (จาก A ถึง Z) หากการเรียงลำดับข้อมูลของคุณไม่เป็นที่ยอมรับ ลองดูสูตร SUM / TRANSPOSE ที่ยอดเยี่ยมที่แนะนำโดย Leo

    ดาวน์โหลดตัวอย่าง LOOKUP และ SUM นี้

    VLOOKUP และ SUMIF - ค้นหา & รวมค่าด้วยเกณฑ์

    ฟังก์ชัน SUMIF ของ Excel คล้ายกับ SUM ที่เราเพิ่งพูดถึงในลักษณะที่รวมค่าด้วย ข้อแตกต่างคือ ฟังก์ชัน SUMIF จะรวมเฉพาะค่าที่ตรงกับเกณฑ์ที่คุณระบุเท่านั้น ตัวอย่างเช่น สูตร SUMIF ที่ง่ายที่สุด =SUMIF(A2:A10,">10") เพิ่มค่าในเซลล์ A2 ถึง A10 ที่มากกว่า 10

    วิธีนี้ง่ายมากใช่ไหม และตอนนี้ลองพิจารณาสถานการณ์ที่ซับซ้อนขึ้นเล็กน้อย สมมติว่าคุณมีตารางที่แสดงชื่อพนักงานขายและหมายเลข ID ( Lookup_table ) คุณมีตารางอื่นที่มีรหัสเดียวกันและตัวเลขการขายที่เกี่ยวข้อง ( ตารางหลัก ) งานของคุณคือค้นหายอดรวมของการขายที่ทำโดยบุคคลที่กำหนดตาม ID ของพวกเขา มี 2 ​​ปัจจัยที่ซับซ้อน:

    • ตารางจดหมายมีหลายรายการสำหรับ ID เดียวกันในลำดับแบบสุ่ม
    • คุณไม่สามารถเพิ่มคอลัมน์ "ชื่อพนักงานขาย" ใน ตารางหลัก

    และตอนนี้ เรามาสร้างสูตรกันก่อน โดยหายอดขายทั้งหมดที่ทำโดยบุคคลหนึ่งๆ และอย่างที่สอง ให้รวมค่าที่พบ

    ก่อนที่เราจะเริ่มต้นสูตร ให้ฉันเตือนคุณถึงไวยากรณ์ของฟังก์ชัน SUMIF:

    SUMIF(range, criteria, [sum_range])
    • range - พารามิเตอร์นี้อธิบายในตัวเอง เป็นเพียงช่วงของเซลล์ที่คุณต้องการประเมินตามเกณฑ์ที่ระบุ
    • criteria - เงื่อนไขที่บอกสูตรว่าจะรวมค่าใด สามารถระบุในรูปแบบของตัวเลข การอ้างอิงเซลล์ นิพจน์ หรือฟังก์ชัน Excel อื่นๆ
    • sum_range - พารามิเตอร์นี้เป็นทางเลือก แต่สำคัญมากสำหรับเรา กำหนดช่วงที่จะเพิ่มค่าของเซลล์ที่เกี่ยวข้อง หากละเว้น Excel จะรวมค่าของเซลล์ที่ระบุในอาร์กิวเมนต์ช่วง (พารามิเตอร์ที่ 1)

    โดยคำนึงถึงข้อมูลข้างต้น มากำหนดพารามิเตอร์ 3 ตัวสำหรับฟังก์ชัน SUMIF ของเรา ตามที่คุณจำได้ เราต้องการรวมยอดขายทั้งหมดที่ทำโดยบุคคลหนึ่งซึ่งมีชื่ออยู่ในเซลล์ F2 ในตารางหลัก (โปรดดูภาพด้านบน)

    1. ช่วง - เนื่องจากเรากำลังค้นหาตามรหัสพนักงานขาย พารามิเตอร์ ช่วง สำหรับฟังก์ชัน SUMIF ของเราคือคอลัมน์ B ในตารางหลัก ดังนั้น คุณสามารถป้อนช่วง B:B หรือถ้าคุณแปลงข้อมูลเป็นตาราง คุณสามารถใช้ชื่อคอลัมน์แทน: Main_table[ID]
    2. เกณฑ์ - เนื่องจากเรามีพนักงานขาย ชื่อในตารางอื่น (ตารางค้นหา) เราต้องใช้สูตร VLOOKUP เพื่อค้นหา ID ที่ตรงกับบุคคลที่กำหนด ของบุคคลนั้นชื่อเขียนในเซลล์ F2 ในตารางหลัก เราจึงค้นหาโดยใช้สูตรนี้: VLOOKUP($F$2,Lookup_table,2,FALSE)

      แน่นอน คุณสามารถป้อนชื่อในเกณฑ์การค้นหาของฟังก์ชัน VLOOKUP ได้ แต่การใช้การอ้างอิงเซลล์แบบสัมบูรณ์จะดีกว่า วิธีการเนื่องจากเป็นการสร้างสูตรสากลที่ใช้ได้กับการป้อนชื่อใดๆ ในเซลล์ที่กำหนด

    3. ช่วงผลรวม - นี่เป็นส่วนที่ง่ายที่สุด เนื่องจากยอดขายของเราอยู่ในคอลัมน์ C ชื่อ "ยอดขาย" เราจึงใส่เพียง Main_table[Sales]

      ตอนนี้ สิ่งที่คุณต้องมีก็คือประกอบส่วนต่างๆ ของสูตร และสูตร SUMIF + VLOOKUP ของคุณก็พร้อมแล้ว:

      =SUMIF(Main_table[ID], VLOOKUP($F$2, Lookup_table, 2, FALSE), Main_table[Sales])

    ดาวน์โหลดตัวอย่าง VLOOKUP และ SUMIF นี้

    วิธีทำ vlookup ใน Excel แบบไม่ต้องใช้สูตร

    สุดท้าย ให้ฉัน แนะนำเครื่องมือที่สามารถค้นหา จับคู่ และผสานตารางของคุณโดยไม่ต้องใช้ฟังก์ชันหรือสูตรใดๆ เครื่องมือ Merge Tables ที่มาพร้อมกับ Ultimate Suite สำหรับ Excel ได้รับการออกแบบและพัฒนาเพื่อเป็นทางเลือกที่ประหยัดเวลาและใช้งานง่ายแทนฟังก์ชัน VLOOKUP และ LOOKUP ของ Excel และยังมีประโยชน์มากทั้งสำหรับผู้เริ่มต้นและผู้ใช้ขั้นสูง

    แทนที่จะต้องค้นหาสูตร คุณเพียงแค่ระบุตารางหลักและตารางค้นหา กำหนดคอลัมน์ทั่วไป และบอกวิซาร์ดว่าคุณต้องการดึงข้อมูลใด

    จากนั้นให้คุณปล่อยให้วิซาร์ดค้นหา จับคู่ และส่งผลลัพธ์ให้คุณสองสามวินาที หากคุณคิดว่า Add-in นี้อาจเป็นประโยชน์ในการทำงานของคุณ คุณสามารถดาวน์โหลด a

    Michael Brown เป็นผู้ที่ชื่นชอบเทคโนโลยีโดยเฉพาะและมีความหลงใหลในการทำให้กระบวนการที่ซับซ้อนง่ายขึ้นโดยใช้เครื่องมือซอฟต์แวร์ ด้วยประสบการณ์กว่าทศวรรษในอุตสาหกรรมเทคโนโลยี เขาได้ฝึกฝนทักษะของเขาใน Microsoft Excel และ Outlook รวมถึง Google ชีตและเอกสาร บล็อกของ Michael ทุ่มเทให้กับการแบ่งปันความรู้และความเชี่ยวชาญของเขากับผู้อื่น โดยให้คำแนะนำและแบบฝึกหัดที่ทำตามได้ง่ายเพื่อปรับปรุงผลิตภาพและประสิทธิภาพ ไม่ว่าคุณจะเป็นมืออาชีพที่ช่ำชองหรือมือใหม่ บล็อกของ Michael นำเสนอข้อมูลเชิงลึกอันมีค่าและคำแนะนำที่เป็นประโยชน์สำหรับการใช้ประโยชน์สูงสุดจากเครื่องมือซอฟต์แวร์ที่จำเป็นเหล่านี้