snasui.com ยินดีต้อนรับ
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ ระบุ Version ของ Excel
คำแสดงเจตนา
ขอผลแห่งการให้ความรู้นี้ จงกลับไปยังผู้ที่เป็นเจ้าของเดิม แม้ข้าพเจ้าจะไม่รู้จักท่านก็ตาม ขอให้แสงแห่งปัญญาที่ท่านเคยจุดไว้ ได้กลับไปเติมเต็มชีวิตของท่านอีกครั้ง และขอให้เจตนาของข้าพเจ้าเป็นการคืนความดีอย่างสงบ
ฟอรัมสำหรับแจกจ่ายแบ่งปันไฟล์ รวมทั้งแหล่งความรู้ต่าง ๆ เกี่ยวกับ Excel
pla_tassy
Member
Posts: 2 Joined: Tue May 27, 2014 5:50 pm
#1
Post
by pla_tassy » Tue Jun 03, 2014 5:58 pm
เลขบัตรประชาชน 13 หลัก เก็บเป็น Number ไว้ เช่น 1100300234084
ต้องการเขียน VBA หรือสูตร Excel เพื่อรับข้อมูลตัวเลขนี้มา โดยใส่ขีดกลางคั่น แบบนี้>> 1-1003-00234-08-4
ก่อนจะ copy ไปที่ Worksheet อื่นค่ะ
ลองใช้วิธีการ Format cell แล้วแต่ค่าที่เก็บก็เป็นตัวเลขล้วนๆเหมือนเดิมเลยค่ะ (ไม่ต้องการเก็บค่าเป็นตัวเลขอย่างเดียว)
ไม่ทราบว่าพอมีแนวทางแนะนำไหมคะ ขอบคุณค่ะ
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#2
Post
by snasui » Tue Jun 03, 2014 6:01 pm
สำหรับ VBA ต้องเขียนมาเองก่อนตามฏการใช้บอร์ดข้อ 5 ด้านบนครับ
สำหรับสูตร สามารถเขียนเป็น
=Text(A1,"0-0000-00000-00-0")
หาก A1 คือค่าที่ต้องการแปลงเป็น 13 หลักแบบมี - คั่น
pla_tassy
Member
Posts: 2 Joined: Tue May 27, 2014 5:50 pm
#3
Post
by pla_tassy » Wed Jun 04, 2014 8:36 am
snasui wrote: สำหรับ VBA ต้องเขียนมาเองก่อนตามฏการใช้บอร์ดข้อ 5 ด้านบนครับ
สำหรับสูตร สามารถเขียนเป็น
=Text(A1,"0-0000-00000-00-0")
หาก A1 คือค่าที่ต้องการแปลงเป็น 13 หลักแบบมี - คั่น
ขออภัยค่ะไม่ได้อ่านกฎให้ละเอียดก่อน
ขอบคุณมากสำหรับสูตร Excel นะคะ ตกลงใช้ Excel ง่ายกว่าค่ะ ^___^
noompkbn9
Member
Posts: 1 Joined: Fri May 30, 2014 1:19 pm
#4
Post
by noompkbn9 » Tue Jun 10, 2014 2:32 pm
สำหรับสูตร 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
Athena_PKBN