เปิดตาราง Excel มาแล้วเจอ #REF!, #VALUE!, #DIV/0! เต็มไปหมด งงว่าผิดตรงไหน — บทความนี้อธิบายทุกรหัส error ของ Excel ว่าแปลว่าอะไร เกิดจากอะไร และแก้ยังไง
C2fx
=A2/B2| A | B | C | |
|---|---|---|---|
| 1 | ยอดขาย | จำนวนวัน | เฉลี่ย/วัน |
| 2 | 1,000 | 0 | #DIV/0! |
| 3 | abc | 4 | #VALUE! |
| 4 | 2,400 | 4 | 600 |
ความหมายและวิธีแก้แต่ละรหัส
| รหัส | เกิดจาก | วิธีแก้ |
##### |
คอลัมน์แคบเกินไป หรือวันที่/เวลาติดลบ | ดับเบิลคลิกเส้นแบ่งหัวคอลัมน์เพื่อขยาย / เช็คว่าไม่ได้เอาวันที่ลบกันจนติดลบ |
#DIV/0! |
หารด้วย 0 หรือเซลล์ว่าง | เช็คตัวหาร หรือครอบด้วย IFERROR |
#N/A |
VLOOKUP / XLOOKUP / MATCH หาค่าที่ต้องการไม่เจอ | เช็คค่าที่ค้นและช่วงข้อมูล หรือครอบด้วย IFNA |
#NAME? |
พิมพ์ชื่อฟังก์ชันผิด ลืมใส่ " รอบข้อความ หรืออ้างชื่อ Range ที่ไม่มี |
ตรวจการสะกดฟังก์ชันและชื่อ Range |
#VALUE! |
เอาข้อความมาคำนวณ หรือชนิดข้อมูลไม่ตรงกัน | เช็คว่าเซลล์ที่อ้างเป็นตัวเลขจริง ไม่ใช่ตัวเลขที่เก็บเป็นข้อความ |
#REF! |
สูตรอ้างเซลล์ที่ถูกลบทั้งแถว/คอลัมน์ไปแล้ว | กด Ctrl + Z ทันทีถ้าเพิ่งลบ หรือแก้สูตรให้ชี้เซลล์ใหม่ |
#NUM! |
ตัวเลขใหญ่/เล็กเกินขอบเขต หรือหาค่ารากที่สองของจำนวนลบ | ตรวจอาร์กิวเมนต์ของฟังก์ชัน |
#NULL! |
ใช้เว้นวรรค (ตัวดำเนินการ intersection) ระหว่างสองช่วงที่ไม่ตัดกัน | ใช้ : สำหรับช่วง และ , สำหรับหลายช่วง ให้ถูก |
#SPILL! |
สูตรที่กระจายผลลัพธ์ (spill) ล้นลงช่องที่มีข้อมูลอื่นขวางอยู่ | ลบข้อมูลที่ขวางในพื้นที่ปลายทาง |
#CALC! |
อาร์เรย์ที่คำนวณไม่ได้ เช่นได้อาร์เรย์ว่าง | ตรวจตรรกะของสูตรอาร์เรย์ |
ครอบ error ให้ตารางสะอาด
C2fx
=IFERROR(A2/B2,"")| A | B | C | |
|---|---|---|---|
| 1 | ยอดขาย | จำนวนวัน | เฉลี่ย/วัน |
| 2 | 1,000 | 0 | |
| 3 | 2,400 | 4 | 600 |
| IFERROR(สูตร, “”) | error ทุกชนิด → แสดงว่าง (หรือใส่ 0 / ข้อความก็ได้) |
| IFNA(สูตร, …) | ครอบเฉพาะ #N/A ปล่อย error อื่นให้เห็น จะได้รู้ว่าสูตรพังจริง |
| อย่าครอบมั่ว | ถ้าซ่อน error ทั้งหมด อาจพลาด error ที่ควรแก้จริง เช่น #REF! ที่เกิดจากลบข้อมูลผิด |
เครื่องมือช่วยหาต้นตอ
| สามเหลี่ยมสีเขียวมุมเซลล์ | คลิกไอคอนเตือนข้างเซลล์ เลือก Show Calculation Steps ดูว่าคำนวณพังตรงไหน |
| Formulas > Error Checking | ไล่ทีละ error ทั้งชีต |
| Formulas > Trace Precedents | ดูว่าสูตรดึงค่าจากเซลล์ไหนบ้าง เพื่อหาเซลล์ต้นทางที่ผิด |
ข้อควรรู้
error หนึ่งเซลล์จะทำให้ทุกสูตรที่อ้างต่อ error ตามกันเป็นทอดๆ ให้ไล่แก้จากเซลล์ต้นทาง และ SUM รวมช่วงที่มี error ไม่ได้ ผลจะกลายเป็น error ตาม — ถ้าจำเป็นต้องรวมทั้งที่มี error ให้ใช้ AGGREGATE หรือ SUMIF ที่ข้าม error ได้ ส่วน ##### บนช่องวันที่มักแปลว่าเอาวันที่ลบกันจนติดลบ ไม่ใช่แค่คอลัมน์แคบ
สรุป
จำสั้นๆ: #DIV/0! หารศูนย์, #N/A หาไม่เจอ, #NAME? พิมพ์ผิด, #VALUE! ชนิดข้อมูลผิด, #REF! เซลล์ที่อ้างหายไป, #SPILL! มีของขวางช่อง ครอบด้วย IFERROR ให้ตารางสะอาด แต่แก้ต้นเหตุก่อนเสมอ ใช้ Error Checking กับ Trace Precedents ช่วยหา