DMAX หาค่าสูงสุดจากคอลัมน์ในฐานข้อมูลที่ตรงกับเงื่อนไขที่กำหนด โดยต้องใช้กับหลายเงื่อนไขที่ซับซ้อน
=DMAX(database, field, criteria)
=DMAX(database, field, criteria)
| Argument | Type | Required | Default | Description |
|---|---|---|---|---|
| database | Range | Yes | ช่วงเซลล์ที่มีข้อมูลฐานข้อมูลทั้งหมด รวมถึงแถวหัว (header) ซึ่งแถวแรกต้องเป็นชื่อคอลัมน์ | |
| field | Text or Number | Yes | ชื่อคอลัมน์ (เป็นข้อความในเครื่องหมายอัญประลัษณ์) หรือหมายเลขลำดับของคอลัมน์ (1 = คอลัมน์แรก, 2 = คอลัมน์ที่สอง ฯลฯ) | |
| criteria | Range | Yes | ช่วงเซลล์ที่มีเงื่อนไขการค้นหา โดยแถวแรกต้องเป็นชื่อคอลัมน์ (เดียวกับในฐานข้อมูล) และแถวต่อไปคือค่าเงื่อนไขที่ต้องการ |
DMAX(A5:E11, "Profit", A1:F3)=DMAX(A5:E11, "Profit", A1:F3)
96
DMAX(A2:C100, "Score", E2:E3)=DMAX(A2:C100, "Score", E2:E3)
98
DMAX(Products, "Price", Criteria)=DMAX(Products, "Price", Criteria)
5000
DMAX(Sales, "Amount", DateCriteria)=DMAX(Sales, "Amount", DateCriteria)
15000
ทั้งสองฟังก์ชันทำหน้าที่คล้ายกันในการหาค่าสูงสุดตามเงื่อนไข แต่ DMAX ใช้รูปแบบ Criteria Range ที่แยกจากข้อมูล ขณะที่ MAXIFS ระบุเงื่อนไขโดยตรงในอาร์กิวเมนต์ MAXIFS มักจะอ่านง่ายกว่า แต่ DMAX มีประโยชน์เมื่อต้องการเงื่อนไขที่ซับซ้อนมากหรือใช้ Criteria Range ซ้ำหลายครั้ง
Criteria Range ต้องมีสองส่วน: แถวแรกเป็นชื่อคอลัมน์ที่เหมือนกับในฐานข้อมูล และแถวต่อไปคือค่าเงื่อนไข สำหรับเงื่อนไขหลายจำนวน ให้วางลงแถวสำหรับแต่ละคอลัมน์ เงื่อนไขต่างแถวจะทำให้เป็น OR แต่เงื่อนไขต่างคอลัมน์เดียวกัน จะทำให้เป็น AND
ถ้า Criteria Range ว่างเปล่าหรือไม่มีเงื่อนไข DMAX จะหาค่าสูงสุดของคอลัมน์ทั้งหมด ซึ่งเหมือนกับการใช้ฟังก์ชัน MAX บนคอลัมน์นั้น
อาจเกิดจากชื่อคอลัมน์ (field) ไม่ตรงกับชื่อที่ใช้ในฐานข้อมูล หรือ Criteria Range ไม่มีชื่อคอลัมน์ในแถวแรก ตรวจสอบการสะกดคำและช่องว่างให้แน่นอน
DMAX เป็นฟังก์ชัน Database ที่ใช้หาค่าสูงสุดจากคอลัมน์ใด ๆ ของฐานข้อมูล ที่มีเฉพาะแถวที่ตรงกับเงื่อนไขที่คุณกำหนด
สิ่งที่ทำให้ DMAX ต่างจาก MAX คือ DMAX มีความสามารถในการกำหนดเงื่อนไขเพิ่มเติมได้ ถ้าคุณต้องการหาค่าสูงสุดของยอดขายสำหรับแผนก ‘Sales’ เท่านั้น หรือหาราคาสูงสุดของสินค้าประเภท ‘Electronics’ เท่านั้น DMAX ก็เป็นตัวเลือกที่ดี
ถ้าเงื่อนไขของคุณเรียบง่ายหรือไม่มีเงื่อนไข สามารถใช้ MAX แทนได้ แต่ถ้าต้องการหลายเงื่อนไขที่ซับซ้อน สูตร MAXIFS อาจจะดีกว่า เพราะมันเข้าใจง่ายกว่า 😎