การเปลี่ยนตัวเลข 1, 2, 3,
0 ให้เป็น A, B, C,
J
การเปลี่ยนข้อความลักษณะนี้สามารถใช้สูตร Substitute มาช่วยได้ครับ แต่หากตัวที่ต้องการเปลี่ยนมีจำนวนมากใน Excel 2003 จะต้องพึ่งเซลล์ช่วยหลายเซลล์เนื่องจากสามารถซ้อนสูตรได้เพียง 7 ชั้น แต่หากเป็น Excel 2007 ขึ้นไป สามารถที่จะซ้อนสูตรได้ถึง 64 ชั้นจึงสามารถเขียนสูตรในเซลล์เดียวกรณีไม่เกิน 64 เงื่อนไข
ภาพประกอบ
ตัวอย่างการใช้สูตรใน 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 : 2821 Pageviews. |
 |
|
|