หน้าแรก บทความ Microsoft
Microsoft

ลำดับการคำนวณในสูตร Excel ทำไม =2+3*4 ได้ 14 ไม่ใช่ 20

เผยแพร่ 29 ส.ค. 69

พิมพ์ =2+3*4 ลงไปใน Excel แล้วกด Enter จะได้ 14 ไม่ใช่ 20 เพราะ Excel คูณก่อนบวกเสมอ ตามลำดับความสำคัญของตัวดำเนินการ (operator precedence) การเข้าใจลำดับนี้ช่วยให้เขียนสูตรได้ผลตรงกับที่ตั้งใจ และรู้ว่าต้องใส่วงเล็บตรงไหน บทความนี้สรุปลำดับทั้งหมดพร้อมกับดักที่คนพลาดบ่อย

ลำดับการคำนวณใน Excel จากก่อนไปหลัง

ลำดับ ตัวดำเนินการ ความหมาย
1 : (ช่องว่าง) , ตัวดำเนินการอ้างอิงช่วง เช่น A1:A10
2 - (นำหน้าตัวเลข) เครื่องหมายลบ ทำให้เป็นจำนวนลบ เช่น -5
3 % เปอร์เซ็นต์ เช่น 20% = 0.2
4 ^ ยกกำลัง
5 * และ / คูณ และ หาร (ความสำคัญเท่ากัน ทำจากซ้ายไปขวา)
6 + และ - บวก และ ลบ (ความสำคัญเท่ากัน ทำจากซ้ายไปขวา)
7 & เชื่อมข้อความเข้าด้วยกัน
8 = < > <= >= <> เปรียบเทียบ (ทำหลังสุด)

ตัวดำเนินการที่อยู่ในลำดับเดียวกัน Excel จะทำจากซ้ายไปขวา

วงเล็บมาก่อนทุกอย่าง

สิ่งที่อยู่ในวงเล็บ ( ) จะถูกคำนวณก่อนเสมอ ไม่ว่าจะอยู่ลำดับไหนในตาราง

B2fx=2+3*4
A B
1 สูตร ผลลัพธ์
2 =2+3*4 14
3 =(2+3)*4 20

แถวที่ 2 คูณ 3*4 ก่อนได้ 12 แล้วบวก 2 เป็น 14 ส่วนแถวที่ 3 วงเล็บบังคับให้บวก 2+3 ก่อนได้ 5 แล้วคูณ 4 เป็น 20

กับดักที่ 1: ยกกำลังของจำนวนลบ

B2fx=-2^2
A B
1 สูตร ผลลัพธ์
2 =-2^2 4
3 =-(2^2) -4

ในวิชาคณิตศาสตร์ -2² เท่ากับ −4 แต่ Excel จัดให้เครื่องหมายลบนำหน้าตัวเลข (ลำดับ 2) มาก่อนการยกกำลัง (ลำดับ 4) จึงคิดเป็น (-2)^2 = 4 ถ้าต้องการผลแบบคณิตศาสตร์ต้องเขียน =-(2^2)

กับดักที่ 2: บวกเลขกับเปอร์เซ็นต์

B2fx=50+10%
A B
1 ตั้งใจจะทำ ผลลัพธ์
2 เพิ่ม 10% จาก 50 (=50+10%) 50.1
3 เขียนให้ถูก (=50*(1+10%)) 55

10% ถูกแปลงเป็น 0.1 ก่อน แล้ว 50+0.1 ได้ 50.1 ไม่ใช่การเพิ่มขึ้น 10% ถ้าต้องการบวกเพิ่มเป็นสัดส่วน ต้องคูณกับฐาน เช่น =50*(1+10%) หรือ =50*110%

กับดักที่ 3: เชื่อมข้อความปนกับการบวก

B2fx=1+2&" บาท"
A B
1 สูตร ผลลัพธ์
2 =1+2&” บาท” 3 บาท

เครื่องหมาย & (ลำดับ 7) มาหลังการบวก (ลำดับ 6) Excel จึงบวก 1+2 ได้ 3 ก่อน แล้วค่อยเชื่อมกับ “ บาท” ถ้าอยากได้ 1+ ตามด้วย 2 บาท ต้องใส่วงเล็บ =1&(2&" บาท") หรือใช้ TEXT จัดรูปแบบ

กับดักที่ 4: เปรียบเทียบทำหลังสุด

ตัวดำเนินการเปรียบเทียบ (>, <, =) อยู่ลำดับสุดท้าย ทำให้ =A1+A2>100 หมายถึง “บวก A1 กับ A2 ก่อน แล้วเทียบว่ามากกว่า 100 ไหม” ได้ผลเป็น TRUE หรือ FALSE ไม่ใช่ =A1+(A2>100) ที่จะเอาผล TRUE/FALSE (นับเป็น 1/0) ไปบวก

สรุป

ดูสูตรพื้นฐานที่ใช้บ่อยเพิ่มได้ที่ 10 สูตร Excel พื้นฐานที่ต้องรู้

หมายเหตุ: บทความนี้เขียนและเรียบเรียงโดย AI

← กลับหน้าบทความ
Line