Thep Excel

MAX – ฟังก์ชันหาค่าสูงสุด

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

=MAX(number1, [number2], ...)

By ThepExcel AI Agent
14 December 2025

Function Metrics


Popularity
9/10

Difficulty
1/10

Usefulness
9/10

Syntax & Arguments

=MAX(number1, [number2], ...)

Argument Type Required Default Description
number1 Number/Range Yes ตัวเลข เซลล์ หรือช่วงแรกที่ต้องการหาค่าสูงสุด
number2 Number/Range Optional ตัวเลข เซลล์ หรือช่วงเพิ่มเติม รองรับสูงสุด 255 พารามิเตอร์

How it works

หาคะแนนสอบสูงสุด

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

วิเคราะห์ยอดขายสูงสุด

หายอดขายสูงสุดรายวัน รายสัปดาห์ หรือรายเดือน เพื่อวิเคราะห์ประสิทธิภาพการขาย

หาวันที่ล่าสุด

หาวันที่ล่าสุดจากชุดข้อมูล เช่น วันที่ทำธุรกรรมล่าสุด วันที่อัปเดตล่าสุด

แปลงค่าลบเป็นศูนย์

ใช้ MAX ร่วมกับ 0 เพื่อแปลงค่าลบให้เป็น 0 และคงค่าบวกไว้ เช่น =MAX(0, A1)

Context notes

ใช้ได้กับ Excel ทุกเวอร์ชัน ทั้ง Windows, Mac และ Web ไม่ต้องการเวอร์ชันพิเศษ

Performance & limits

MAX มีประสิทธิภาพสูงแม้กับข้อมูลขนาดใหญ่ สามารถหาค่าสูงสุดจากข้อมูลหลักหมื่นหรือหลักแสนแถวได้รวดเร็ว

Examples

ตัวอย่างที่ 1: หาค่าสูงสุดพื้นฐาน
MAX(10, 50, 30, 25)
หาค่าที่มากที่สุดจากตัวเลข 4 ตัว ได้ 50
.
นี่คือการใช้งานแบบพื้นฐานที่สุด ใส่ตัวเลขเข้าไปตรงๆ แล้ว MAX จะหาค่าที่สูงที่สุดให้
Excel Formula:

=MAX(10, 50, 30, 25)

Result:

50

ตัวอย่างที่ 2: หาจากคอลัมน์ในตาราง
MAX(Sales[Amount])
หายอดขายสูงสุดจากคอลัมน์ Amount สมมติค่าสูงสุดคือ 125,000
.
การใช้กับตารางข้อมูลนี่สะดวกมากครับ ไม่ต้องคอยระบุช่วงเซลล์ทีละเซลล์ แค่อ้างถึงชื่อคอลัมน์ในตารางก็ได้แล้ว
Excel Formula:

=MAX(Sales[Amount])

Result:

125000

ตัวอย่างที่ 3: แปลงค่าลบเป็น 0 (Clamp)
MAX(0, -50)
ใช้ MAX(0, value) เพื่อบังคับให้ค่าลบกลายเป็น 0 เทคนิคนี้เรียกว่า Clamp ครับ
.
ส่วนตัวผมใช้เทคนิคนี้บ่อยมากในการคำนวณยอดคงเหลือ หรือป้องกันไม่ให้มีค่าติดลบแสดงออกมา 😎
Excel Formula:

=MAX(0, -50)

ตัวอย่างที่ 4: หาวันที่ล่าสุด
MAX(Orders[OrderDate])
วันที่ใน Excel จริงๆ แล้วเก็บเป็นตัวเลข (Serial Number) อยู่เบื้องหลัง
.
ดังนั้น MAX จึงสามารถหาวันที่ล่าสุดได้ เพราะค่าตัวเลขที่มากที่สุด = วันที่ล่าสุดนั่นเอง (45657 = 15 ธ.ค. 2024)
Excel Formula:

=MAX(Orders[OrderDate])

Result:

45657

ตัวอย่างที่ 5: หาตำแหน่งค่าสูงสุด
MATCH(MAX(Scores[Score]), Scores[Score], 0)
ใช้ MATCH หาตำแหน่งของค่าสูงสุด พบที่แถวที่ 3
.
เทคนิคนี้เจ๋งตรงที่เราสามารถนำไปใช้กับ INDEX เพื่อดึงข้อมูลอื่นๆ จากแถวเดียวกันได้ เช่น ชื่อคนที่ได้คะแนนสูงสุด
Excel Formula:

=MATCH(MAX(Scores[Score]), Scores[Score], 0)

Result:

3

ตัวอย่างที่ 6: เพิกเฉยข้อความ
MAX(100, "N/A", 75, 200)
MAX เพิกเฉยข้อความ "N/A" โดยอัตโนมัติ คำนวณเฉพาะตัวเลข ได้ 200
.
นี่คือจุดแข็งของ MAX ครับ ไม่ต้องกังวลว่าข้อมูลจะมีข้อความหรือค่าว่างปนอยู่ มันจะข้ามไปเลยโดยอัตโนมัติ
Excel Formula:

=MAX(100, "N/A", 75, 200)

Result:

200

FAQs

MAX แตกต่างจาก MAXA อย่างไร?

MAX เพิกเฉยค่า Logic (TRUE/FALSE) และข้อความ ส่วน MAXA จะนับ TRUE = 1, FALSE = 0, และข้อความ = 0
.
ส่วนตัวผมแนะนำให้ใช้ MAX สำหรับข้อมูลตัวเลขทั่วไป เพราะปลอดภัยกว่า ไม่ต้องกังวลว่าจะมีค่า Logic แอบปนมา 😅

จะหาค่าสูงสุดแบบมีเงื่อนไขได้อย่างไร?

ใช้ MAXIFS (Excel 2016 ขึ้นไป) ได้เลยครับ เช่น =MAXIFS(D2:D10, A2:A10, “กรุงเทพ”, C2:C10, “>100”)
.
ถ้าเวอร์ชันเก่า ต้องใช้สูตรแบบ Array เช่น =MAX(IF(A2:A10=”กรุงเทพ”, B2:B10)) แล้วกด Ctrl+Shift+Enter แต่ถ้ามี MAXIFS อยู่แล้ว ใช้ MAXIFS จะง่ายกว่าเยอะครับ 😎

MAX จะคืนค่าอะไรถ้าไม่มีตัวเลขเลย?

MAX จะคืนค่า 0 ถ้าช่วงข้อมูลมีแต่เซลล์ว่าง ข้อความ หรือค่า Logic
.
ตัวอย่าง =MAX(“ก”,”ข”,”ค”) จะได้ 0 เพราะไม่มีตัวเลขในพารามิเตอร์เลย ส่วนตัวผมมักจะใช้ IF ตรวจสอบก่อนว่ามีข้อมูลตัวเลขหรือเปล่า เพื่อป้องกันปัญหานี้

จะหาค่าสูงสุดที่ 2 ได้อย่างไร?

ใช้ LARGE ได้เลยครับ เช่น =LARGE(A1:A10, 2) จะหาค่าสูงสุดอันดับที่ 2
.
สูตร LARGE(range, k) จะคืนค่าสูงสุดอันดับที่ k โดย k=1 คือค่าสูงสุด, k=2 คือค่าสูงสุดที่ 2 เป็นต้น เจ๋งมากครับตัวนี้ 😎

MAX นับค่า 0 หรือไม่?

ใช่ครับ MAX พิจารณาค่า 0 เป็นตัวเลขปกติ
.
ตัวอย่าง =MAX(0, -5, -10) จะได้ 0 เพราะ 0 มากกว่า -5 และ -10 นี่แหละครับที่ทำให้เทคนิค Clamp (บังคับค่าลบเป็น 0) ใช้ได้

จะหาตำแหน่งของค่าสูงสุดได้อย่างไร?

ใช้ MATCH ร่วมกับ MAX ได้ครับ เช่น =MATCH(MAX(A1:A10), A1:A10, 0) จะหาตำแหน่งแถว (row number) ของค่าสูงสุด
.
ถ้าต้องการดึงข้อมูลจากคอลัมน์อื่น เช่น ชื่อคนที่ได้คะแนนสูงสุด ให้ใช้ INDEX-MATCH แบบนี้ =INDEX(Names, MATCH(MAX(Scores), Scores, 0))

MAX ใช้ได้กับ Excel เวอร์ชันไหนบ้าง?

MAX เป็นฟังก์ชันพื้นฐานที่มีใน Excel ทุกเวอร์ชันครับ ไม่ต้องกังวลเรื่องความเข้ากันได้
.
ใช้ได้ทั้ง Excel for Microsoft 365, Excel 2024, 2021, 2019, 2016, 2013, 2010, 2007 และเวอร์ชันเก่ากว่า ทั้ง Windows, Mac และ Excel for the web

Resources & Related

Additional Notes

ฟังก์ชัน MAX ใช้หาค่าสูงสุด (maximum value) จากชุดข้อมูลตัวเลขครับ ไม่ว่าจะเป็นเซลล์เดี่ยว ช่วงเซลล์ หรือใส่ค่าตัวเลขโดยตรงก็ได้

.

ที่เจ๋งคือ MAX รองรับได้สูงสุด 255 พารามิเตอร์ แถมยังเพิกเฉยเซลล์ว่าง ข้อความ และค่า Logic โดยอัตโนมัติ ทำให้ไม่ต้องกังวลว่าข้อมูลจะมีอย่างอื่นปนอยู่เลย 😎

.

ส่วนตัวผมชอบใช้ MAX เป็นเทคนิค “Clamp” (จำกัดค่า) โดยใส่ =MAX(0, value) เพื่อบังคับให้ค่าลบกลายเป็น 0 ใช้บ่อยมากในการคำนวณยอดคงเหลือหรือป้องกันไม่ให้มีค่าติดลบครับ 💡

Leave a Reply

Your email address will not be published. Required fields are marked *