Page 1 of 1

แปลงตัวเลขบัตรประชาชนให้มีขีดกลาง - คั่น

Posted: Tue Jun 03, 2014 5:58 pm
by pla_tassy
เลขบัตรประชาชน 13 หลัก เก็บเป็น Number ไว้ เช่น 1100300234084
ต้องการเขียน VBA หรือสูตร Excel เพื่อรับข้อมูลตัวเลขนี้มา โดยใส่ขีดกลางคั่น แบบนี้>> 1-1003-00234-08-4
ก่อนจะ copy ไปที่ Worksheet อื่นค่ะ

ลองใช้วิธีการ Format cell แล้วแต่ค่าที่เก็บก็เป็นตัวเลขล้วนๆเหมือนเดิมเลยค่ะ (ไม่ต้องการเก็บค่าเป็นตัวเลขอย่างเดียว)
ไม่ทราบว่าพอมีแนวทางแนะนำไหมคะ ขอบคุณค่ะ

Re: แปลงตัวเลขบัตรประชาชนให้มีขีดกลาง - คั่น

Posted: Tue Jun 03, 2014 6:01 pm
by snasui
:D สำหรับ VBA ต้องเขียนมาเองก่อนตามฏการใช้บอร์ดข้อ 5 ด้านบนครับ :roll:

สำหรับสูตร สามารถเขียนเป็น

=Text(A1,"0-0000-00000-00-0")

หาก A1 คือค่าที่ต้องการแปลงเป็น 13 หลักแบบมี - คั่น

Re: แปลงตัวเลขบัตรประชาชนให้มีขีดกลาง - คั่น

Posted: Wed Jun 04, 2014 8:36 am
by pla_tassy
snasui wrote::D สำหรับ VBA ต้องเขียนมาเองก่อนตามฏการใช้บอร์ดข้อ 5 ด้านบนครับ :roll:

สำหรับสูตร สามารถเขียนเป็น

=Text(A1,"0-0000-00000-00-0")

หาก A1 คือค่าที่ต้องการแปลงเป็น 13 หลักแบบมี - คั่น

ขออภัยค่ะไม่ได้อ่านกฎให้ละเอียดก่อน
ขอบคุณมากสำหรับสูตร Excel นะคะ ตกลงใช้ Excel ง่ายกว่าค่ะ ^___^

Re: แปลงตัวเลขบัตรประชาชนให้มีขีดกลาง - คั่น

Posted: Tue Jun 10, 2014 2:32 pm
by noompkbn9
สำหรับสูตร VBA สามารถใช้ Function Format ได้ครับ

Code: Select all

Sub CopyData()

    Dim CitizenID As String

    Application.ScreenUpdating = False
    CitizenID = Format(Worksheets("Sheet1").Range("A1").Value, "0-0000-00000-00-0")
    Worksheets("Sheet2").Range("A1").Value = CitizenID
    Application.ScreenUpdating = True

End Sub