สูตรพวกค้นหาค่าแทบทั้งหมด ไม่ว่า XLookup, VLookup, Match+Index ตามปกติจะใช้กับการหาค่าที่จัดเก็บไวัในตารางตามแนวเดียวกันกับค่าที่ใช้ค้นหา เช่น หาจากชื่อสินค้าว่าขายออกไปเท่าไร ทั้งเซลล์ชื่อกับเซลล์ยอดขายก็ต้องเก็บไว้ในรายการเดียวกัน
แต่ถ้าในหน้ารายงานการขาย ยอดขายไม่ได้วางไว้ในแนวเดียวกันกับชื่อสินค้าล่ะ จะใช้สูตรยังไง เช่น ตามภาพนี้ตารางด้านซ้ายใน Column B ใส่ชื่อสินค้า a b c d เอาไว้ ส่วนยอดขายของสินค้าแต่ละตัวใน Column D กลับวางเยื้องกับชื่อสินค้า
ซึ่งหน้าตาแบบนี้พบเสมอในหน้ารายงานที่ด้านล่างสุดของแต่ละตารางจะแสดงยอดรวมเอาไว้
ตามภาพนี้ในเซลล์ H2 พอใส่ชื่อสินค้า c ลงไป จะต้องหายอดขาย 333 ออกมาด้วยสูตรอะไรดีหนอ
กว่าจะหายอดขายออกมา ได้เรียนสูตรกันหนำใจไปเลย ทำได้อย่างน้อย 3 วิธี
สำหรับคนที่ใช้ 365 จะใช้สูตร XLookup ก็ยังได้ กลายเป็นวิธีที่ 4
=XLookup( H2, B2:B17, D5:D20)
ทั้ง 4 วิธีนี้สามารถหาค่าได้ทั้งตัวเลขหรือตัวอักษร แต่ถ้ากำหนดว่าให้หายอดขาย ซึ่งแน่นอนว่ายอดขายต้องเป็นตัวเลข ไม่มีทางที่จะกรอกยอดขายเป็นตัวอักษร จะมีสูตร SumIF อีกวิธี
=SumIF( B2:B17, H2, D5)
นี่เป็นนิสัยวิธีการสอนของผม ชอบไหมครับ ได้เรียนแบบนี้ ตอนจบจะได้เรียนวิธีซ้อนสูตร ทำให้เป็น Mega Formula ใช้แค่เซลล์เดียวสร้างสูตรหาคำตอบได้เลย
================================
=SumIF( B2:B17, H2, D5) ดีกว่าสูตรอื่นๆตามภาพนี้ยังไง
1. สั้นกว่า
2. ถ้าหาค่าไม่พบจะไม่ error แต่จะหาค่า 0 ออกมาให้ซึ่งนำไปคำนวณต่อได้ทันที ไม่เสียเวลามาแก้ error
3. ไม่จำเป็นต้องกำหนดพื้นที่ของคำตอบยอดขายให้มีขนาดเท่ากันกับพื้นที่ที่ใช้เก็บชื่อสินค้า กำหนดแค่เซลล์ D5 ก็พอ ตัวสูตรจะกำหนดขอบเขตให้เอง
จำหลักไว้นะครับว่า ถ้าค่าที่ต้องการหาเป็นตัวเลข และมั่นใจว่าไม่มีค่าซ้ำ ให้โยนสูตรอื่นทิ้งไป หันมาใช้ SumIF สะดวกกว่า
================================
ผมอธิบายที่ไปที่มาของ 3 วิธีไว้ที่ https://www.excelexperttraining.com/book/index.php/course-manuals/excel-expert-managing-data/finding-data-from-last-line
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.