เวบถาม-ตอบปัญหา Excel http://www.snasui.com/
Group Blog
 
<<
เมษายน 2553
 123
45678910
11121314151617
18192021222324
252627282930 
 
3 เมษายน 2553
 
All Blogs
 
การเปลี่ยนตัวเลข 1, 2, 3, …0 ให้เป็น A, B, C, …J

การเปลี่ยนข้อความลักษณะนี้สามารถใช้สูตร Substitute มาช่วยได้ครับ แต่หากตัวที่ต้องการเปลี่ยนมีจำนวนมากใน Excel 2003 จะต้องพึ่งเซลล์ช่วยหลายเซลล์เนื่องจากสามารถซ้อนสูตรได้เพียง 7 ชั้น แต่หากเป็น Excel 2007 ขึ้นไป สามารถที่จะซ้อนสูตรได้ถึง 64 ชั้นจึงสามารถเขียนสูตรในเซลล์เดียวกรณีไม่เกิน 64 เงื่อนไข

ภาพประกอบ

ChangeNumToText

 



ตัวอย่างการใช้สูตรใน Excel 2003

สมมุติค่าเป้าหมายเริ่มที่ A1

1. ที่ B1 คีย์สูตรในลำดับที่ 1

=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1,0,"J"),1,"A"),2,"B"),3,"C"),4,"D"),5,"E"),6,"F"),7,"G")

Enter

2. ที่ C1 คีย์สูตรในลำดับที่ 2 เพื่อเปลี่ยนให้เป็นค่าที่ต้องการ

=SUBSTITUTE(SUBSTITUTE(B1,8,"H"),9,"I")

ตัวอย่างการใช้สูตรใน Excel 2007

ที่ B1 คีย์

=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1,0,"J"),1,"A"),2,"B"),3,"C"),4,"D"),5,"E"),6,"F"),7,"G"),8,"H"),9,"I")

Enter

สำหรับท่านที่คุ้นเคยกับการใช้งาน VBA สามารถเขียนฟังก์ชั่นในการเปลี่ยนค่าตามลักษณะสูตรด้านบนได้ดังนี้ครับ

===========================================

Option Explicit

Function ctext(r) As String
Dim i As Byte
For i = 1 To Len(r)
    Select Case Mid(r, i, 1)
        Case 1: Mid(r, i, 1) = "A"
        Case 2: Mid(r, i, 1) = "B"
        Case 3: Mid(r, i, 1) = "C"
        Case 4: Mid(r, i, 1) = "D"
        Case 5: Mid(r, i, 1) = "E"
        Case 6: Mid(r, i, 1) = "F"
        Case 7: Mid(r, i, 1) = "G"
        Case 8: Mid(r, i, 1) = "H"
        Case 9: Mid(r, i, 1) = "I"
        Case 0: Mid(r, i, 1) = "J"
    End Select
Next i
    ctext = r
End Function


===========================================

และหากมีเงื่อนไขว่าให้ลบค่าอักขระที่ไม่ใช่ Number ออกทั้งหมด ส่วนค่าที่เป็น Number ให้เปลี่ยนเป็นอักษรตามเงื่อนไขด้านบน สามารถใช้ Code ตามด้านล่างได้ครับ

===========================================

Function cntt(r) As String
Dim i As Byte
Dim b As Variant
b = Array("J", "A", "B", "C", "D", "E", "F", "G", "H", "I")
    For i = 1 To Len(r)
        On Error Resume Next
        cntt = cntt & b(Mid(r, i, 1))
    Next i
End Function


===========================================


Create Date : 03 เมษายน 2553
Last Update : 1 มีนาคม 2556 21:59:59 น. 6 comments
Counter : 2566 Pageviews.

 


โดย: thanitsita วันที่: 3 เมษายน 2553 เวลา:15:25:12 น.  

 
สวัสดีครับคุณ thanitsita ขอบคุณที่แวะมาครับ


โดย: คนควน วันที่: 3 เมษายน 2553 เวลา:19:46:40 น.  

 


ขอบคุณค่ะ


โดย: Opey วันที่: 3 เมษายน 2553 เวลา:21:11:02 น.  

 
สวัสดีครับคุณ Opey ขอบคุณที่แวะมาครับ


โดย: คนควน วันที่: 3 เมษายน 2553 เวลา:22:29:26 น.  

 
ขอบคุณสำหรับความรู้ มีประโยชน์มาก ติดตามเกือบทุกกระทู้ที่คุณคมควน เข้ามาตอบเลยค่ะ


โดย: เป้ IP: 125.25.87.0 วันที่: 13 เมษายน 2553 เวลา:4:08:01 น.  

 
สวัสดีครับคุณ เป้

ขอบคุณสำหรับการติดตามการตอบปัญหาครับ


โดย: คนควน วันที่: 13 เมษายน 2553 เวลา:20:45:12 น.  

คนควน
Location :
สงขลา Thailand

[ดู Profile ทั้งหมด]

ฝากข้อความหลังไมค์
Rss Feed
Smember
ผู้ติดตามบล็อก : 27 คน [?]





MVP Excel



MOS Expert in Excel 2003
MOS Specialist in Excel 2003



คนควน เป็นคน อ.สะเดา จ.สงขลา จบการศึกษาทางด้านการบัญชีระดับปริญญาตรีและปริญญาโท จากมหาวิทยาลัยรามคำแหง มีความถนัดหลายด้าน ทั้งเรื่อง ศิลปะ ดนตรี กีฬา คอมพิวเตอร์ จากการที่ได้คลุกคลีกับโปรแกรมชุด Microsoft Office จึงได้เรียนรู้เกี่ยวกับเทคนิคการใช้งานต่าง ๆ โดยเฉพาะ Excel จะมีความถนัดเป็นพิเศษ เนื่องจากใช้เป็นส่วนใหญ่ในการทำงานประจำวัน ได้รับ MOS Cetificate (Microsoft Office Specialist) ทั้ง Specialist และ Expert อีกทั้งเป็นคนชอบศึกษาค้นคว้าทดลองและชอบแบ่งปัน จึงได้เขียน Blog เพื่อเผยแพร่เทคนิคการใช้งาน Excel เพื่อประโยชน์แก่ผู้สนใจจะได้มีแหล่งศึกษา นำไปประยุกต์ใช้ให้เกิดประโยชน์สูงสุดกับงานของตนเองต่อไป












เมื่อวันที่ 24 ม.ค. 2553 ได้เปิด Forum เพื่อถาม-ตอบปัญหาเกี่ยวกับ Excel ทั้งเป็นแหล่งศึกษาให้กับผู้สนใจทั่วไป สามารถคลิกภาพด้านบนเพื่อไปยัง Forum ได้ครับ



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


Statistics Hits
New Comments
Friends' blogs
[Add คนควน's blog to your web]
Links
 

 Pantip.com | PantipMarket.com | Pantown.com | © 2004 BlogGang.com allrights reserved.