Thep Excel

DMAXหาค่าสูงสุดจากฐานข้อมูลตามเงื่อนไข

DMAX หาค่าสูงสุดจากคอลัมน์ในฐานข้อมูลที่ตรงกับเงื่อนไขที่กำหนด โดยต้องใช้กับหลายเงื่อนไขที่ซับซ้อน

fx
=DMAX(database, field, criteria)

ความนิยม3/10
ความยาก5/10
ประโยชน์4/10

อัปเดต 2 December 2025

Syntax & Arguments

อาร์กิวเมนต์ ชนิด คำอธิบาย
database Range ช่วงเซลล์ที่มีข้อมูลฐานข้อมูลทั้งหมด รวมถึงแถวหัว (header) ซึ่งแถวแรกต้องเป็นชื่อคอลัมน์
field Text or Number ชื่อคอลัมน์ (เป็นข้อความในเครื่องหมายอัญประลัษณ์) หรือหมายเลขลำดับของคอลัมน์ (1 = คอลัมน์แรก, 2 = คอลัมน์ที่สอง ฯลฯ)
criteria Range ช่วงเซลล์ที่มีเงื่อนไขการค้นหา โดยแถวแรกต้องเป็นชื่อคอลัมน์ (เดียวกับในฐานข้อมูล) และแถวต่อไปคือค่าเงื่อนไขที่ต้องการ

Additional Notes

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

สิ่งที่ทำให้ DMAX ต่างจาก MAX คือ DMAX มีความสามารถในการกำหนดเงื่อนไขเพิ่มเติมได้ ถ้าคุณต้องการหาค่าสูงสุดของยอดขายสำหรับแผนก ‘Sales’ เท่านั้น หรือหาราคาสูงสุดของสินค้าประเภท ‘Electronics’ เท่านั้น DMAX ก็เป็นตัวเลือกที่ดี

ถ้าเงื่อนไขของคุณเรียบง่ายหรือไม่มีเงื่อนไข สามารถใช้ MAX แทนได้ แต่ถ้าต้องการหลายเงื่อนไขที่ซับซ้อน สูตร MAXIFS อาจจะดีกว่า เพราะมันเข้าใจง่ายกว่า 😎

Examples

หาค่าสูงสุดที่ตรงกับเงื่อนไขเดียวDMAX(A5:E11, "Profit", A1:F3)

ฐานข้อมูล A5:E11 มีคอลัมน์ Profit ส่วน Criteria A1:F3 มีเงื่อนไขเช่น 'Fruit = Apple' หรือ 'Height = 10-16 ft' ผลลัพธ์ 96 คือค่า Profit สูงสุดที่ตรงกับเงื่อนไขเหล่านั้น

fx
=DMAX(A5:E11, "Profit", A1:F3)

ผลลัพธ์96
หาคะแนนสูงสุดของแผนกที่เลือกDMAX(A2:C100, "Score", E2:E3)

ฐานข้อมูล A2:C100 มีข้อมูลพนักงาน (ชื่อ แผนก คะแนน) ถ้า E2:E3 มีเงื่อนไข "Department" = "Sales" DMAX จะหาคะแนนสูงสุดของแผนก Sales เท่านั้น

fx
=DMAX(A2:C100, "Score", E2:E3)

ผลลัพธ์98
หาราคาสูงสุดของสินค้าที่มีสต็อกเหลือDMAX(Products, "Price", Criteria)

ถ้า Criteria กำหนดว่า "Category" = "Electronics" AND "Stock" > 0 DMAX จะหาราคาสูงสุดของสินค้า Electronics ที่ยังมีสต็อก

fx
=DMAX(Products, "Price", Criteria)

ผลลัพธ์5000
หาการขึ้นลงของค่าสูงสุดตามช่วงวันที่DMAX(Sales, "Amount", DateCriteria)

ถ้า DateCriteria มีเงื่อนไข "Date" >= "2024-01-01" AND "Date" <= "2024-01-31" DMAX จะหาจำนวนยอดขายสูงสุดในเดือนมกราคม เท่านั้น

fx
=DMAX(Sales, "Amount", DateCriteria)

ผลลัพธ์15000

FAQs

DMAX กับ MAXIFS ต่างกันอย่างไร+

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

ต้องตั้งค่า Criteria Range อย่างไร+

Criteria Range ต้องมีสองส่วน: แถวแรกเป็นชื่อคอลัมน์ที่เหมือนกับในฐานข้อมูล และแถวต่อไปคือค่าเงื่อนไข สำหรับเงื่อนไขหลายจำนวน ให้วางลงแถวสำหรับแต่ละคอลัมน์ เงื่อนไขต่างแถวจะทำให้เป็น OR แต่เงื่อนไขต่างคอลัมน์เดียวกัน จะทำให้เป็น AND

ถ้า Criteria Range ว่างเปล่าจะเกิดอะไร+

ถ้า Criteria Range ว่างเปล่าหรือไม่มีเงื่อนไข DMAX จะหาค่าสูงสุดของคอลัมน์ทั้งหมด ซึ่งเหมือนกับการใช้ฟังก์ชัน MAX บนคอลัมน์นั้น

เพราะเหตุใด DMAX ไม่ทำงาน (แสดง #NAME? error)+

อาจเกิดจากชื่อคอลัมน์ (field) ไม่ตรงกับชื่อที่ใช้ในฐานข้อมูล หรือ Criteria Range ไม่มีชื่อคอลัมน์ในแถวแรก ตรวจสอบการสะกดคำและช่องว่างให้แน่นอน

Resources & Related

ฟังก์ชันที่ผู้เขียนโยงไว้กับ DMAX จัดกลุ่มตามหมวด · ชี้ที่ชื่อใดชื่อหนึ่ง แล้วฟังก์ชันที่ใช้คู่กันจะมีจุดทอง

ฟังก์ชันนี้DMAXDatabase
Database (6)
DAVERAGE

หาค่าเฉลี่ยของข้อมูลในตารางแบบฐานข้อมูล (มีหัวคอลัมน์) โดยกรองด้วยตารางเงื่อนไขแยกต่างหาก แล้วคืนค่าเฉลี่ยเฉพาะแถวที่ผ่านเงื่อนไขนั้น

DCOUNT

นับจำนวนเซลล์ที่เป็น "ตัวเลข" เท่านั้นในคอลัมน์ที่ระบุของตารางแบบฐานข้อมูล โดยนับเฉพาะแถวที่ผ่านตารางเงื่อนไขที่กำหนดไว้แยกต่างหาก

DGET

ดึงค่าเดียวออกจากคอลัมน์ที่ระบุของตารางแบบฐานข้อมูล โดยต้องมีแถวที่ตรงกับเงื่อนไขพอดี 1 แถวเท่านั้น ถ้าเจอมากกว่าหรือไม่เจอเลยจะได้ error ทันที

DMIN

DMIN ค้นหาค่าต่ำสุดจากคอลัมน์ในฐานข้อมูลที่ตรงตามเงื่อนไขที่กำหนด เหมาะสำหรับการวิเคราะห์ข้อมูลแบบมีเงื่อนไข

DPRODUCT

ฟังก์ชันที่คูณค่าในคอลัมน์ของฐานข้อมูลเมื่อตรงตามเงื่อนไขที่กำหนด เป็นเครื่องมือสำหรับคำนวณผลคูณแบบมีเงื่อนไขในข้อมูลขนาดใหญ่

DSUM

DSUM ใช้หาผลรวมจากคอลัมน์ในฐานข้อมูลที่ตรงตามเงื่อนไขที่กำหนดไว้

Statistical (2)
MAX

MAX คืนค่าสูงสุดจากชุดข้อมูลที่มี Data Type เป็นตัวเลข เพิกเฉยเซลล์ว่าง ข้อความ และค่า Logic โดยอัตโนมัติ ทำให้ไม่ต้องกังวลว่าจะมีข้อมูลประเภทอื่นปนอยู่ในช่วง เหมาะสำหรับหาค่าสูงสุดเช่น คะแนนสูงสุด ยอดขายสูงสุด หรือวันที่ล่าสุด และยังใช้เทคนิค Clamp (จำกัดค่า) โดยการใส่ 0 เป็น argument แรกเพื่อบังคับให้ค่าลบกลายเป็น 0 ได้อีกด้วย

MAXIFS

MAXIFS ใช้หาค่าสูงสุดจากช่วงข้อมูลที่ตรงตามเงื่อนไขหนึ่งหรือมากกว่า แตกต่างจาก MAX ที่หาเพียงค่าสูงสุดทั้งหมด MAXIFS มีความยืดหยุ่นในการกรองข้อมูลก่อนหาค่าสูงสุด

Comments

อีเมลของคุณจะไม่ถูกเผยแพร่