Thep Excel

CONCATENATEรวมข้อความ (เวอร์ชันเก่า)

CONCATENATE เป็นฟังก์ชันแบบเก่าที่ใช้นำข้อความ ตัวเลข หรือค่าจากเซลล์ต่างๆ มาต่อกันให้เป็นข้อความยาวๆ เพียงเส้นเดียว ปัจจุบันสามารถใช้เครื่องหมาย & หรือฟังก์ชัน CONCAT/TEXTJOIN ซึ่งสะดวกกว่าได้

fx
=CONCATENATE(text1, [text2], …)

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

อัปเดต 30 November 2025

Syntax & Arguments

อาร์กิวเมนต์ ชนิด ค่าเริ่มต้น คำอธิบาย
text1 Any ข้อความ, ตัวเลข, หรือการอ้างอิงเซลล์ส่วนแรก
[text2]ไม่บังคับ Any "" ข้อความ, ตัวเลข, หรือการอ้างอิงเซลล์ส่วนที่สองและอื่นๆ (สูงสุด 255 ส่วน)

[ ] = อาร์กิวเมนต์ที่ไม่บังคับ

Additional Notes

CONCATENATE รวมข้อความหลายส่วนเป็นข้อความเดียว เป็น legacy function ที่รองรับสูงสุด 255 arguments แต่ไม่รับ Range
.
ที่เจ๋งคือตอนนี้มีตัวเลือกที่ดีกว่าแล้ว ใช้ CONCAT (รับ Range ได้) หรือ TEXTJOIN (กำหนด delimiter และข้ามเซลล์ว่างได้) หรือแม้แต่เครื่องหมาย & ซึ่งเขียนง่ายกว่าและไม่จำกัดจำนวน
.
ส่วนตัวผมแนะนำให้ใช้ TEXTJOIN สำหรับงานใหม่ครับ CONCATENATE ยังมีไว้เพื่อ backward compatibility กับไฟล์เก่าเท่านั้น 😎

How it works

รวมชื่อและนามสกุล

นำชื่อในคอลัมน์ A และนามสกุลในคอลัมน์ B มารวมกันเป็นชื่อเต็ม

สร้างรหัสสินค้า

รวมรหัสหมวดหมู่ รหัสย่อย และรันนัมเบอร์เข้าด้วยกัน

สร้างประโยคจากข้อมูล

เช่น "สินค้า [ชื่อสินค้า] มียอดขาย [ยอดขาย] บาท"

Examples

ตัวอย่างที่ 1: รวมชื่อและนามสกุลCONCATENATE("John", " ", "Smith")

รวม 3 ส่วน: ชื่อ + ช่องว่าง + นามสกุล เป็นข้อความเดียว ส่วนตัวผมใช้แบบนี้บ่อยมากเวลาต้องรวมชื่อจากหลายคอลัมน์ครับ

fx
=CONCATENATE("John", " ", "Smith")

ผลลัพธ์John Smith
ตัวอย่างที่ 2: สร้างรหัสสินค้าCONCATENATE("PRD", "-", "2024", "-", "001")

รวมรหัสหมวด ปี และลำดับ คั่นด้วย – เป็นรหัสสินค้า วิธีนี้ดีสำหรับสร้าง unique ID แบบอัตโนมัติครับ 😎

fx
=CONCATENATE("PRD", "-", "2024", "-", "001")

ผลลัพธ์PRD-2024-001
ตัวอย่างที่ 3: ใช้ & แทน (แนะนำ)"Hello"&" "&"World"

เครื่องหมาย & ทำงานเหมือน CONCATENATE แต่เขียนง่ายกว่า ไม่ต้องใช้ฟังก์ชัน ไม่จำกัดจำนวน ส่วนตัวผมใช้ & มากกว่า CONCATENATE เยอะครับ 💡

fx
="Hello"&" "&"World"

ผลลัพธ์Hello World
ตัวอย่างที่ 4: สร้างประโยคจากตัวเลขCONCATENATE("Total: ", 1500, " items")

CONCATENATE แปลงตัวเลขเป็นข้อความอัตโนมัติ ไม่ต้องใช้ TEXT ถ้าไม่ต้องการ format พิเศษ สะดวกดีครับ

fx
=CONCATENATE("Total: ", 1500, " items")

ผลลัพธ์Total: 1500 items
ตัวอย่างที่ 5: CONCAT รับ Range ได้CONCAT({"A","B","C"})

CONCAT (Excel 2019+) รับ Range หรือ Array ได้ ต่างจาก CONCATENATE ที่ต้องใส่ทีละเซลล์ ที่เจ๋งคือถ้ามีข้อมูลเยอะ ใช้ CONCAT สะดวกกว่าเยอะ

fx
=CONCAT({"A","B","C"})

ผลลัพธ์ABC
ตัวอย่างที่ 6: TEXTJOIN กำหนด DelimiterTEXTJOIN(", ", TRUE, {"Apple","Banana","Cherry"})

TEXTJOIN (Excel 2019+) กำหนดตัวคั่น (", ") และ TRUE = ข้ามเซลล์ว่าง เอาจริงๆ นะครับ วิธีนี้สะดวกกว่า CONCATENATE มากมาย แนะนำให้ใช้สำหรับงานใหม่ๆ เลยครับ ✨

fx
=TEXTJOIN(", ", TRUE, {"Apple","Banana","Cherry"})

ผลลัพธ์Apple, Banana, Cherry

FAQs

CONCATENATE กับ & ต่างกันอย่างไร?+

ผลลัพธ์เหมือนกัน แต่ & เขียนง่ายกว่า ไม่ต้องพิมพ์ชื่อฟังก์ชัน และไม่จำกัดจำนวน

ส่วน CONCATENATE จำกัด 255 arguments ส่วนตัวผมแนะนำให้ใช้ & หรือ CONCAT แทนครับ เพราะเขียนง่ายและอ่านง่ายกว่ามาก 😅

ควรใช้ CONCATENATE, CONCAT, หรือ TEXTJOIN?+

TEXTJOIN (Excel 2019+) ดีที่สุด เพราะกำหนด delimiter ได้และข้ามเซลล์ว่างได้

ถ้าไม่ต้องการ delimiter ใช้ CONCAT (รับ Range) ส่วน CONCATENATE ใช้เฉพาะกรณีต้องเปิดไฟล์ใน Excel เก่าเท่านั้นครับ

CONCATENATE รับ Range ได้ไหม?+

ไม่ได้ครับ =CONCATENATE(A1:A3) จะได้แค่ค่าแรก (A1) ต้องใส่ทีละเซลล์ =CONCATENATE(A1,A2,A3) หรือใช้ CONCAT/TEXTJOIN ที่รับ Range ได้แทน ที่ต้องระวังคือถ้ามีข้อมูลเยอะ CONCATENATE จะเขียนยาวมากๆ ครับ 😅

ต่อข้อความกับวันที่ทำอย่างไร?+

ใช้ TEXT แปลงวันที่ก่อน เช่น =CONCATENATE("Date: ", TEXT(A1, "dd/mm/yyyy")) ไม่เช่นนั้นจะได้ serial number แทนวันที่

ส่วนตัวผมมักจะใช้ & กับ TEXT ครับ เช่น ="Due: "&TEXT(A1,"dd/mm/yyyy") เขียนสั้นและอ่านง่ายกว่า 💡

CONCATENATE รองรับ Excel เวอร์ชันไหน?+

ทุกเวอร์ชันตั้งแต่ Excel 2003 แต่ CONCAT และ TEXTJOIN มีตั้งแต่ Excel 2019 / Microsoft 365 เท่านั้น ถ้าต้องการความเข้ากันได้กับ Excel เก่า ใช้ CONCATENATE หรือ & จะปลอดภัยกว่าครับ

Resources & Related

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

ฟังก์ชันนี้CONCATENATEText
Text (10)
ARRAYTOTEXT

ฟังก์ชันที่แปลงอาร์เรย์หรือช่วงเซลล์ให้เป็นข้อความเดียว โดยสามารถเลือกรูปแบบการแสดงผล (อ่านง่ายหรือ Strict Format)

BAHTTEXT

แปลงตัวเลขเป็นคำอ่านภาษาไทย (บาท และสตางค์) ใช้สำหรับเอกสารทางการเงินที่ต้องระบุจำนวนเงินเป็นตัวอักษร

CHAR

CHAR แปลงรหัสตัวอักษร (1-255) เป็นตัวอักษรจริง มีประโยชน์สำหรับแทรกอักขระพิเศษที่พิมพ์ยาก เช่น การขึ้นบรรทัดใหม่

CONCAT

CONCAT รวมข้อความจากหลายเซลล์ หรือช่วงข้อมูลเข้าด้วยกัน โดยไม่มีตัวคั่นอัตโนมัติ ต่างจาก CONCATENATE ที่ต้องระบุทีละเซลล์ CONCAT ใช้ได้กับช่วง Range ทำให้การรวมข้อมูลขนาดใหญ่ง่ายกว่า

LEFT

LEFT ดึงตัวอักษรจากด้านซ้ายสุดของข้อความตามจำนวนที่ต้องการ ถ้าไม่ระบุจำนวนจะดึงมา 1 ตัว ผลลัพธ์เป็น Text เสมอแม้ดึงตัวเลขออกมา

MID

MID ตัดข้อความออกจากตำแหน่งเริ่มต้นที่คุณกำหนด โดยระบุความยาวของข้อความที่ต้องการ สะดวกมากสำหรับดึงข้อมูลบางส่วนจากข้อความที่ยาว เช่น รหัสสินค้า, รหัสพนักงาน, หรือวันที่ที่ฝังตัวในข้อความ

RIGHT

RIGHT จะคืนค่าเป็นข้อความ (Text) ที่ถูกตัดมาจากด้านขวาสุดของข้อความต้นฉบับตามจำนวนที่ระบุ ถ้าไม่ระบุจำนวน ฟังก์ชันจะดึงมาเพียง 1 ตัวอักษร
.
ที่เจ๋งคือสามารถใช้ร่วมกับ LEN หรือ FIND เพื่อตัดข้อความแบบไดนามิกได้ ผลลัพธ์ที่ได้จะเป็น Text เสมอ ถ้าต้องการนำไปคำนวณต่อ ต้องแปลงเป็นตัวเลขก่อนครับ

TEXT

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

TEXTJOIN

TEXTJOIN รวมข้อความจากหลายเซลล์หรือทั้งช่วงเป็นข้อความเดียว โดยกำหนดตัวคั่นเองได้และสั่งข้ามเซลล์ว่างได้ในคำสั่งเดียว ต่างจาก CONCATENATE ที่ต้องพิมพ์ตัวคั่นและเชื่อมทีละเซลล์เอง งานที่ใช้บ่อยคือรวมที่อยู่หลายบรรทัด สร้างลิสต์คั่นด้วยคอมม่าไว้ส่งออก หรือรวมผลลัพธ์จาก FILTER ให้ออกมาเป็นข้อความเดียว

VALUETOTEXT

แปลงค่าใดๆ (ตัวเลข, วันที่, อาร์เรย์, หรือแม้กระทั่ง Error) ให้เป็นข้อความเพื่อใช้งานได้จริง

Information (1)
ISTEXT

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

Comments

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