---
title: วิธีการใช้ D-Function เช่น DSUM DCOUNT DMAX DGET
url: https://www.thepexcel.com/d-function-dsum/
type: post
date: 2020-01-06
updated: 2026-05-03
author: Sira Ekabut
categories: [Excel ทั่วไป]
tags: [DSUM, DMAX]
---

# วิธีการใช้ D-Function เช่น DSUM DCOUNT DMAX DGET

ปกติแล้วฟังก์ชันที่ใช้ในการสรุปผลข้อมูลที่เรามักจะใช้กันก็จะหนีไม่พ้นพวก SUMIFS, COUNTIFS, MAXIFS, MINIFS อะไรพวกนี้ ซึ่งมีความสามารถในการสรุปข้อมูลตามเงื่อนไขได้

 

แต่ใน Excel ก็ยังมีฟังก์ชันอีกกลุ่มนึงที่สามารถสรุปข้อมูลตามเงื่อนไขได้เช่นกัน ซึ่งผมขอเรียกว่า D-Function ซึ่งย่อมาจาก Database Function เช่น เช่น DSUM DCOUNT DMAX DGET และในบทความนี้เราก็จะมาเรียนรู้เรื่องฟังก์ชันนี้กัน ว่ามันดียังไง? มีข้อจำกัดยังไง? ซึ่งผมเรียบเรียงเนื้อหาใหม่จากที่ผมเคยเขียนไว้ใน[หนังสือจอมเวทเทพเอ็กเซล](https://www.thepexcel.com/course/magic-excel-ebook/)นะครับ

 

## ขั้นตอนการใช้งาน D-Function

 

มีอยู่ 3 ขั้นตอนหลักๆ คือ

 
1. เตรียมข้อมูลให้อยู่ในรูปแบบของ Database (มีชื่อคอลัมน์ครบทุกอัน ไม่ซ้ำกัน)
2. เตรียมเงื่อนไขให้อยู่ในรูปแบบตาราง (เหมือน criteria ของเครื่องมือ Advanced Filter เป๊ะ)
3. เรียกใช้ D-Function !

 

โดยที่ D-Function ส่วนใหญ่จะมีองค์ประกอบดังนี้

 

```
=ชื่อ D-FUNCTION ที่ต้องการ (database,field,criteria)
```

 
- **Database** ให้เลือกตารางทั้งอัน** รวมหัวตารางด้วย** (สำคัญมาก!)
- **Field** คือ ชื่อคอลัมน์ที่เราต้องการเอามาสรุปผล
- **Criteria **คือ ตารางเงื่อนไข โดยต้องมีชื่อ Field ที่จะเอามาทำเงื่อนไขด้วย
    - ถ้าเงื่อนไขอยู่บรรทัดเดียวกัน แต่คนละคอลัมน์ คือเงื่อนไขแบบ AND (และ)
    - ถ้าเงื่อนไขอยู่คนละบรรทัด คอลัมน์เดียวกัน คือเงื่อนไขแบบ OR (หรือ)

 

ตัวอย่างดังรูป

 ![1](https://www.thepexcel.com/wp-content/uploads/2020/01/d-function-00.png) 
- **Database** คือ A5:D15
- **Field** คือ D5 หรือ ข้อความว่า ยอดขาย (ดังนั้นใส่ว่า “ยอดขาย” ก็ได้)
- **Criteria **คือตารางสีม่วง ซึ่งต้องมีชื่อ Field (หัวตาราง) ที่เป็นเงื่อนไขอยู่
    -

 

ผลรวมของยอดขายจึงได้ 236,000 มาจากคอลัมน์ ยอดขาย ใน Database พื้นที่คือ A5:D15 โดยมีเงื่อนไขคือ

 
- ชื่อ =นาย ก และ สินค้า=Food (บรรทัดเดียวกัน คือ AND และ)
- หรือ สินค้า=Toy โดยไม่สนว่าชื่ออะไร (คนละบรรทัด คือ OR หรือ)

 

จะได้ว่า 17,000 + 37,000 + 77,000 + 60,000 + 45,000  
= 236,000 นั่นเอง

 

### ข้อดีของ D-Function

 
1. สามารถใส่เงื่อนไขที่ซับซ้อนได้ เช่น มีทั้ง AND และ OR ผสมกันได้ โดยไม่จำเป็นต้องใช้ Helper Column มาทดไว้ก่อน
2. เห็นชัดเจนว่าเงื่อนไขในการคัดกรองข้อมูลมาสรุปผลคืออะไร
3. รองรับฟังก์ชั่นเยอะ (มีพอๆ กับ PivotTable) เช่น มี MIN, MAX แม้จะเป็น Excel Version เก่ากว่า 2019 **(ใน Excel เก่ากว่า 2019 จะไม่มี MINIFS, MAXIFS)**

 

### ข้อเสียของ D-Function

 

ข้อเสียของ D-Function ที่สำคัญคือ เรื่องการจัดรูปแบบของตาราง Criteria นี่แหละครับ เพราะมันทำให้เราไม่สามารถ Copy สูตรลงมาข้างล่างเรื่อยๆ ได้เหมือนสูตรปกติ

 

ข้อจำกัดที่ทำให้ลากสูตรลงมาข้างล่างไม่ได้ เพราะในส่วนของ criteria ใน D-FUNCTION(database,field,criteria) **ต้องมีชื่อคอลัมน์ในตาราง Criteria ด้วยตลอด** ดังนั้นถ้าอยากจะหาผลรวม Food, Toy , Furniture แยกกันคนละบรรทัด จะต้องสร้างตาราง Criteria 3 อันด้วย ซึ่งทำให้ลำบากและไม่สะดวกเอามาก ๆ

 ![2](https://www.thepexcel.com/wp-content/uploads/2020/01/d-function-02.png) 

แต่ถ้าอยากปลดล๊อคเรื่องเงื่อนไขหัวตารางของ Criteria นี้ สามารถใช้วิธีผสานพลัง D-Function ร่วมกับเครื่องมือ Data Table เช่น ตัวอย่างในรูป สามารถใช้ DMAX กับสินค้าหลายๆ ตัวได้เลยพร้อมๆ กัน โดยไม่ต้องสร้างหัวตารางทุกอันครับ

 ![3](https://www.thepexcel.com/wp-content/uploads/2020/01/d-function-x-data-table.png) 

อย่างไรก็ตาม ถ้ามีฟังก์ชันสรุปในกลุ่ม SUMIFS COUNTIFS MINIFS MAXIFS แล้ว ผมว่าใช้พวกนั้นน่าจะสะดวกกว่าครับ หรือถ้าเงื่อนไขซับซ้อนหน่อยอาจต้องเรียนรู้เรื่อง Array Formula เพิ่มเติม ก็จะทำเงื่อนไขยากๆ ได้โดยไม่ต้องใช้ D-Function ครับ

---

_Source: [https://www.thepexcel.com/d-function-dsum/](https://www.thepexcel.com/d-function-dsum/)_
