Thep Excel

REPLACE – แทนที่ข้อความตามตำแหน่ง

REPLACE แทนที่ข้อความจากตำแหน่งที่กำหนด โดยระบุตำแหน่งเริ่มต้น จำนวนตัวอักษรที่ต้องการลบ และข้อความใหม่ที่จะใส่แทน แตกต่างจาก SUBSTITUTE ที่ค้นหาคำที่ตรงตามความพึงพอใจ REPLACE ใช้ตำแหน่งแน่นอน

=REPLACE(old_text, start_num, num_chars, new_text)

By ThepExcel AI Agent
14 December 2025

Function Metrics


Popularity
6/10

Difficulty
3/10

Usefulness
6/10

Syntax & Arguments

=REPLACE(old_text, start_num, num_chars, new_text)

Argument Type Required Default Description
old_text Text Yes ข้อความต้นฉบับที่ต้องการแทนที่ (หรือเซลล์ที่มีข้อความ)
start_num Number Yes ตำแหน่งตัวอักษรที่เริ่มแทนที่ (1 = ตัวแรก, 2 = ตัวที่สอง เป็นต้น)
num_chars Number Yes จำนวนตัวอักษรที่ต้องการลบออก (ถ้า 0 จะเป็นการแทรกข้อความโดยไม่ลบ)
new_text Text Yes ข้อความใหม่ที่จะใส่แทนตำแหน่งที่ลบออก

How it works

ปกป้องข้อมูลส่วนตัว (Masking)

ซ่อนเบอร์บัตรประชาชน เบอร์บัญชีธนาคาร หรือเบอร์โทรศัพท์ โดยแทนที่ส่วนกลางด้วย * หรือ X เพื่อแสดงในรายงานเท่านั้น

อัปเดตข้อมูลที่มีรูปแบบคงที่

เปลี่ยนปี รหัสสาขา หรือคำนำหน้าในข้อมูลที่มีรูปแบบ เช่น "BKK-2023-0001" เป็น "BKK-2024-0001"

ทำความสะอาดข้อมูล (Data Cleaning)

ลบเครื่องหมายหรือช่องว่างที่ไม่ต้องการออกจากข้อความ เช่น ลบ "-" ออกจากหมายเลขโทรศัพท์

Examples

ตัวอย่างที่ 1: เปลี่ยนปีในข้อความ
REPLACE("2023-Data", 1, 4, "2024")
แทนที่ตั้งแต่ตัวที่ 1 จำนวน 4 ตัว ("2023") ด้วย "2024" ผลลัพธ์คือ "2024-Data" เหมาะสำหรับการอัปเดตปีในข้อมูลสำคัญ
Excel Formula:

=REPLACE("2023-Data", 1, 4, "2024")

Result:

2024-Data

ตัวอย่างที่ 2: ซ่อนเบอร์โทรศัพท์เพื่อความเป็นส่วนตัว
REPLACE("081-234-5678", 5, 3, "***")
เริ่มตั้งแต่ตำแหน่ง 5 แทนที่ 3 ตัว ("234") ด้วย "***" เพื่อซ่อนตัวเลขกลาง มีประโยชน์ในการปกป้องข้อมูลเบี้ยวน้อย
Excel Formula:

=REPLACE("081-234-5678", 5, 3, "***")

Result:

081-***-5678

ตัวอย่างที่ 3: แทนที่คำในตำแหน่งท้าย
REPLACE("Hello World", 7, 5, "Excel")
เริ่มตั้งแต่ตำแหน่ง 7 (ที่ "W") แทนที่ 5 ตัว ("World") ด้วย "Excel" ได้ผลลัพธ์เป็น "Hello Excel"
Excel Formula:

=REPLACE("Hello World", 7, 5, "Excel")

Result:

Hello Excel

ตัวอย่างที่ 4: แทรกข้อความโดยไม่ลบ
REPLACE("123456", 3, 0, "-")
เมื่อ num_chars = 0 ฟังก์ชันจะแทรกข้อความใหม่โดยไม่ลบตัวอักษร สูตรนี้แทรกขีด (-) ที่ตำแหน่งที่ 3
Excel Formula:

=REPLACE("123456", 3, 0, "-")

Result:

12-3456

ตัวอย่างที่ 5: ลบ characters โดยใส่ข้อความว่าง
REPLACE("Hello, World!", 6, 2, "")
แทนที่ตำแหน่ง 6 จำนวน 2 ตัว (", ") ด้วยข้อความว่าง ผลลัพธ์คือ "HelloWorld!" โดยลบเครื่องหมายจุลภาค
Excel Formula:

=REPLACE("Hello, World!", 6, 2, "")

Result:

HelloWorld!

FAQs

ความแตกต่างระหว่าง REPLACE กับ SUBSTITUTE คืออะไร?

REPLACE ใช้ตำแหน่งและจำนวนตัวอักษร ส่วน SUBSTITUTE ค้นหาคำที่ตรงตามข้อความและแทนที่ (case-sensitive) REPLACE ดีกว่าเมื่อข้อมูลมีรูปแบบคงที่ เช่น “BKK-2023” เสมอที่ตำแหน่งเดียวกัน

ถ้า start_num มากกว่าความยาวข้อความจะเกิดอะไร?

ฟังก์ชันจะคืนข้อความต้นฉบับออกมาตามเดิม ไม่มีข้อผิดพลาด เช่น =REPLACE(“Hi”, 10, 1, “X”) จะได้ “Hi” เพราะตำแหน่ง 10 อยู่นอกขอบเขต

ทำไมต้องใช้ REPLACE แทนที่จะแก้ไขตรงๆ?

เพราะ REPLACE ทำให้สามารถอัปเดตข้อมูลได้อัตโนมัติในสูตร แล้วสามารถคัดลอกลงมาอีกแถว ถ้าแก้ไขตรงๆ คุณต้องแก้ไขทีละเซลล์ซึ่งช้าและมีโอกาสผิดพลาดสูง

สามารถใช้ REPLACE ซ้อนกันได้ไหม?

ได้ครับ สามารถซ้อน REPLACE ไว้ในอีกอันหนึ่งได้ เช่น =REPLACE(REPLACE(“2023-BKK-001”, 1, 4, “2024”), 6, 3, “CGM”) จะแทนที่ปีและสาขาพร้อมกัน

ผลลัพธ์จาก REPLACE เป็นตัวเลขหรือข้อความ?

เป็นข้อความ (Text) เสมอ แม้ว่าข้อมูลต้นฉบับเป็นตัวเลขก็ตาม หากต้องการนำไปคำนวณ ต้องแปลงเป็นตัวเลขก่อนด้วย VALUE()

REPLACE ใช้ได้กับภาษาไทยไหม?

ได้ครับ REPLACE นับตำแหน่งตัวอักษรตามปกติ ดังนั้นใช้ได้ทั้งภาษาไทยและภาษาอื่นๆ เช่น =REPLACE(“สวัสดี”, 1, 2, “ยินดี”) ได้ “ยินดีสดี”

Resources & Related

Additional Notes

ฟังก์ชัน REPLACE ใน Excel ช่วยแทนที่ข้อความโดยระบุตำแหน่งเริ่มต้นและจำนวนตัวอักษรที่ต้องการแทนที่ เหมาะสำหรับการทำความสะอาดข้อมูลและซ่อนข้อมูลส่วนตัว

Leave a Reply

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