Thep Excel

Tตรวจสอบและส่งกลับข้อความ

T ฟังก์ชันที่ตรวจสอบว่าค่าเป็นข้อความหรือไม่ ถ้าใช่ส่งกลับข้อความเดิม ถ้าไม่ใช่ส่งกลับค่าว่าง ใช้ปลอดภัยกว่าการต่อข้อความตรงๆ เมื่อไม่แน่ใจว่าเซลล์ต้นทางเก็บอะไรอยู่

fx
=T(value)

ความนิยม6/10
ความยาก2/10
ประโยชน์8/10

อัปเดต 2 December 2025

Syntax & Arguments

อาร์กิวเมนต์ ชนิด คำอธิบาย
value Any ค่าหรือเซลล์ที่ต้องการตรวจสอบว่าเป็นข้อความหรือไม่

Additional Notes

ฟังก์ชัน T ใช้สำหรับตรวจสอบว่าเซลล์ที่กำหนดเป็นข้อความหรือไม่ หากเป็นข้อความจะส่งกลับข้อความนั้น หากไม่เป็นข้อความ (เช่น ตัวเลข วันที่ ค่าตรรกะ) จะส่งกลับค่าว่างแทน

ที่ต้องเข้าใจคือ T ถูกสร้างมาให้ใช้กับ Lotus 1-2-3 เดิมๆ Microsoft เองก็ระบุตรงๆ ในเอกสารว่าส่วนใหญ่ไม่จำเป็นต้องใช้แล้ว เพราะ Excel จัดการแปลงค่าให้อัตโนมัติอยู่แล้วเวลาต้องใช้เป็นข้อความ ผมเจอ T โผล่มาเยอะสุดในสเปรดชีทเก่าที่ทำต่อกันมาหลายคน หรือในเทมเพลตรายงานที่ต้องต่อข้อความปลายทาง (เช่น “จัดทำโดย: ” ต่อชื่อ) แล้วไม่อยากให้ตัวเลขหรือวันที่หลุดเข้ามาปนโดยไม่ตั้งใจ

จุดที่คนพลาดบ่อยคือคิดว่า T จะจัดการทุกกรณีที่ไม่ใช่ข้อความให้เป็นค่าว่างหมด แต่จริงๆ แล้ว T ไม่แตะค่า error เลย ถ้าค่าที่ส่งเข้าไปเป็น #N/A หรือ #DIV/0! มันจะปล่อย error นั้นผ่านออกมาเหมือนเดิม ไม่ใช่ค่าว่าง ต้องดักด้วย IFERROR ก่อนถ้าไม่อยากให้ error หลุดออกไป

Examples

ตรวจสอบข้อความง่ายๆT("Excel")

T("Excel") ตรวจสอบว่า "Excel" เป็นข้อความ? ใช่ ส่งกลับ "Excel" เดิมทุกตัวอักษร

fx
=T("Excel")

ผลลัพธ์"Excel"
ตรวจสอบตัวเลขT(100)

T(100) ตรวจสอบว่า 100 เป็นข้อความ? ไม่ใช่ (100 เป็นตัวเลข) จึงส่งกลับค่าว่างแทนที่จะส่งกลับ 100

fx
=T(100)

ผลลัพธ์"" (ค่าว่าง)
ต่อข้อความในรายงานโดยไม่ให้ค่าแปลกปนออกมา"จัดทำโดย: "…

ถ้า B2 = "คุณสมชาย" (ข้อความ) → ได้ "จัดทำโดย: คุณสมชาย"
แต่ถ้า B2 ดันมีสูตรที่คืนตัวเลขหรือวันที่ (เช่น พิมพ์ผิดช่อง) T จะกรองทิ้งให้เหลือค่าว่าง ป้องกันไม่ให้รายงานโชว์ "จัดทำโดย: 45123" แบบเลขวันที่หลุดออกมา

fx
="จัดทำโดย: "&T(B2)

ผลลัพธ์"จัดทำโดย: คุณสมชาย" หรือ "จัดทำโดย: " (ถ้า B2 ไม่ใช่ข้อความ)
T ไม่แปลง error ให้เป็นค่าว่าง (กับดักที่คนพลาดบ่อย)T(NA())

หลายคนคิดว่า T จะจับทุกอย่างที่ไม่ใช่ข้อความให้กลายเป็นค่าว่าง แต่ error เป็นข้อยกเว้น T ปล่อย #N/A ผ่านออกมาเหมือนเดิม ถ้าไม่อยากให้ error หลุดออกไปต่อในรายงาน ต้องห่อด้วย IFERROR(T(…),"") อีกชั้น

fx
=T(NA())

ผลลัพธ์#N/A
นับเฉพาะเซลล์ที่เป็นข้อความจริงในช่วงข้อมูลSUMPRODUCT(–(T(A2:A10)""))

T(A2:A10) ทำให้ทุกเซลล์ที่ไม่ใช่ข้อความ (ตัวเลข วันที่ ว่าง) กลายเป็น "" ส่วนเซลล์ที่เป็นข้อความจะยังคงค่าเดิม แล้ว <>"" เช็คว่าเหลือข้อความจริงกี่เซลล์ –() แปลง TRUE/FALSE เป็น 1/0 ให้ SUMPRODUCT รวมได้

fx
=SUMPRODUCT(–(T(A2:A10)<>""))

ผลลัพธ์จำนวนเซลล์ที่เป็นข้อความ

FAQs

T ต่างจาก ISTEXT อย่างไร?+

ISTEXT ส่งกลับ TRUE/FALSE ที่ระบุว่าเซลล์เป็นข้อความหรือไม่ ส่วน T ส่งกลับค่าข้อความเอง (หรือค่าว่าง) T ใช้เมื่อต้องการค่าข้อความจริงไปต่อในสูตรอื่น ISTEXT ใช้เมื่อต้องการเช็กเพื่อใช้ในเงื่อนไข IF

T กับ error เช่น #N/A หรือ #DIV/0! ทำงานยังไง?+

T ไม่แตะ error เลย ถ้าค่าที่ส่งเข้าไปเป็น error มันจะปล่อย error นั้นผ่านออกมาเหมือนเดิม ไม่แปลงเป็นค่าว่างเหมือนกรณีตัวเลขหรือวันที่ ถ้าต้องการดัก error ด้วยต้องใช้ IFERROR(T(A1),"") ครอบอีกชั้น

ตัวเลขที่เก็บเป็นข้อความ T จะตรวจสอบอย่างไร?+

T จะตรวจสอบประเภทข้อมูลจริงในเซลล์เท่านั้น ตัวเลขที่เก็บเป็นข้อความ (เช่นพิมพ์ '100 นำหน้าด้วยเครื่องหมายอะพอสทรอฟี ทำให้ชิดซ้าย) T จะมองว่าเป็นข้อความและส่งกลับค่าเดิม ต่างจาก 100 ตัวเลขจริงที่ T จะคืนค่าว่าง

T กับฟังก์ชัน TEXT() คนละตัวกันใช่ไหม?+

ใช่ครับ คนละตัวกันเลย TEXT() ใช้แปลงตัวเลขหรือวันที่ให้เป็นข้อความตามรูปแบบที่กำหนด (เช่น TEXT(A1,"dd/mm/yyyy")) ส่วน T() แค่เช็คว่าค่าเป็นข้อความอยู่แล้วหรือไม่ ถ้าไม่ใช่ก็คืนค่าว่าง ไม่ได้แปลงอะไรให้เลย ชื่อคล้ายกันมากจนสับสนบ่อย

ควรใช้ T ตอนไหน ไม่ควรใช้ตอนไหน?+

ใช้ T เมื่อต้องต่อข้อความ (concatenate) จากแหล่งที่ไม่แน่ใจประเภทข้อมูล และต้องการกันไม่ให้ตัวเลข/วันที่/ค่าตรรกะหลุดเข้ามาปนในสตริง เช่นทำ label หรือ footnote อัตโนมัติ แต่ถ้าจุดประสงค์คือเช็คเงื่อนไขเพื่อไปต่อใน IF ควรใช้ ISTEXT แทน เพราะอ่านสูตรเข้าใจง่ายกว่าและได้ TRUE/FALSE ตรงๆ

Resources & Related

ฟังก์ชันที่ผู้เขียนโยงไว้กับ T จัดกลุ่มตามหมวด · ชี้ที่ชื่อใดชื่อหนึ่ง แล้วฟังก์ชันที่ใช้คู่กันจะมีจุดทอง

ฟังก์ชันนี้TText
Text (2)
CLEAN

ลบตัวอักษรที่ไม่สามารถพิมพ์ได้ (ASCII 0-31) ออกจากข้อความ มีประโยชน์เมื่อคัดลอกข้อมูลจากระบบอื่นที่มีอักขระซ่อนอยู่

TEXT

TEXT ใช้รหัสรูปแบบ (Format Codes) เช่น "dd/mm/yyyy" สำหรับวันที่ หรือ "#,##0.00" สำหรับตัวเลขมีทศนิยม ผลลัพธ์ที่ได้จะเป็นข้อความ (Text) เสมอ ไม่สามารถนำไปคำนวณต่อได้

Information (2)
ISTEXT

ISTEXT ตรวจสอบว่าค่าในเซลล์เป็นข้อความจริงหรือไม่ จุดเด่นของมันคือมันแยกความแตกต่างระหว่าง '123' (ข้อความ) กับ 123 (ตัวเลข) ซึ่งช่วยเมื่อต้องการตรวจสอบรูปแบบข้อมูลก่อนคำนวณ

N

N แปลงค่าต่างๆให้เป็นตัวเลข (TRUE→1, FALSE→0, วันที่→Serial Number, ข้อความ→0)

Logical (1)
IFERROR

IFERROR ช่วยดักจับ Error ทุกประเภทที่เกิดขึ้นในสูตร (#N/A, #VALUE!, #REF!, #DIV/0!, #NUM!, #NAME?, #NULL!) แล้วเปลี่ยนเป็นค่าที่เราต้องการแทน
.
ที่เจ๋งคือมันช่วยให้รายงานและ Dashboard ดูสะอาด ไม่มี Error แสดงให้ผู้ใช้งานเห็น โดยถ้าสูตรไม่มี Error ก็จะ return ผลลัพธ์ปกติ
.
ส่วนตัวผมคิดว่าฟังก์ชันนี้เป็น "ตัวช่วยมหาเทพ" สำหรับคนทำรายงานเลยครับ 😎

Compatibility (1)
TINV

TINV หาค่าวิกฤต t (critical value) แบบสองหางจากความน่าจะเป็นและองศาอิสระ (deg_freedom) ใช้สร้างช่วงความเชื่อมั่นเมื่อไม่รู้ค่า SD ของประชากรจริง เช่น งานวิศวกรรมและงานควบคุมคุณภาพ เป็นฟังก์ชันเก่าที่ควรเปลี่ยนไปใช้ T.INV.2T

Comments

อีเมลของคุณจะไม่ถูกเผยแพร่