ไปยังเนื้อหาหลัก

วิธีแปลงตัวอักษรคอลัมน์เป็นตัวเลขหรือในทางกลับกันใน Excel

บทความนี้ผมจะพูดถึงวิธีการแปลงตัวอักษรคอลัมน์เป็นหมายเลขคอลัมน์หรือแปลงหมายเลขคอลัมน์เป็นตัวอักษร เช่นแปลงตัวอักษรคอลัมน์ AA เป็นตัวเลข 27 หรือแปลงคอลัมน์หมายเลข 100 เป็นตัวอักษร CV เพื่อรับการแก้ไขด้วยวิธีการต่อไปนี้

แปลงตัวอักษรคอลัมน์เป็นตัวเลขหรือในทางกลับกันด้วยสูตร

แปลงตัวอักษรคอลัมน์เป็นตัวเลขหรือในทางกลับกันด้วย User Defined Function


ลูกศรสีฟ้าฟองขวา แปลงตัวอักษรคอลัมน์เป็นตัวเลขหรือในทางกลับกันด้วยสูตร

หากต้องการแปลงตัวอักษรคอลัมน์หรือป้ายชื่อเป็นตัวเลขหรือในทางกลับกันสูตรด้านล่างอาจช่วยคุณได้โปรดทำดังนี้:

แปลงตัวอักษรคอลัมน์เป็นหมายเลขคอลัมน์:

โปรดป้อนสูตรนี้: = COLUMN (ทางอ้อม ("AB1")) ลงในเซลล์ว่างที่คุณต้องการค้นหาผลลัพธ์ที่แปลงแล้วจากนั้นกด เข้าสู่ คีย์เพื่อรับหมายเลขคอลัมน์:

doc แปลงป้ายชื่อคอลัมน์เป็นหมายเลข 1

หมายเหตุ ในสูตรข้างต้น AB คือตัวอักษรคอลัมน์ที่คุณต้องการรับหมายเลขคอลัมน์ตามคุณสามารถเปลี่ยนได้ตามต้องการ

แปลงหมายเลขคอลัมน์เป็นตัวอักษรคอลัมน์:

กรุณาพิมพ์สูตรนี้: = SUBSTITUTE (ที่อยู่ (1,200,4), 1, "") ลงในเซลล์ว่างเพื่อรับผลลัพธ์จากนั้นกด เข้าสู่ เพื่อรับตัวอักษรคอลัมน์ดังนี้:

doc แปลงป้ายชื่อคอลัมน์เป็นหมายเลข 2

หมายเหตุ ในสูตรข้างต้นตัวเลขสีแดง 200 คือหมายเลขคอลัมน์ที่คุณต้องการแปลงเป็นตัวอักษรคอลัมน์คุณสามารถเปลี่ยนได้ตามต้องการ


ลูกศรสีฟ้าฟองขวา แปลงตัวอักษรคอลัมน์เป็นตัวเลขหรือในทางกลับกันด้วย User Defined Function

ยกเว้นสูตรที่นี่ฉันยังสามารถแนะนำไฟล์ ฟังก์ชันที่ผู้ใช้กำหนด เพื่อจัดการกับงานนี้

แปลงตัวอักษรคอลัมน์เป็นหมายเลขคอลัมน์:

1. กด ALT + F11 จากนั้นจะเปิดไฟล์ Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่าง

2. คลิก สิ่งที่ใส่เข้าไป > โมดูลและวางรหัสต่อไปนี้ในไฟล์ โมดูล หน้าต่าง.

รหัส VBA: แปลงตัวอักษรคอลัมน์เป็นหมายเลขคอลัมน์:

Public Function ToColNum(ColN)
    ToColNum = Range(ColN & 1).Column
End Function

3. จากนั้นบันทึกและปิดรหัสนี้กลับไปที่แผ่นงานและป้อนสูตรนี้: = โทคอลนัม ("VV") (VV คือตัวอักษรคอลัมน์ที่คุณต้องการแปลงตัวเลข ) ลงในเซลล์ว่างแล้วกด เข้าสู่ คีย์เพื่อรับหมายเลขคอลัมน์ดูภาพหน้าจอ:

doc แปลงป้ายชื่อคอลัมน์เป็นหมายเลข 3

แปลงหมายเลขคอลัมน์เป็นตัวอักษรคอลัมน์:

1. กด ALT + F11 จากนั้นจะเปิดไฟล์ Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่าง

2. คลิก สิ่งที่ใส่เข้าไป > โมดูลและวางรหัสต่อไปนี้ในไฟล์ โมดูล หน้าต่าง.

รหัส VBA: แปลงหมายเลขคอลัมน์เป็นตัวอักษรคอลัมน์:

Public Function ToColletter(Collet)
    ToColletter = Split(Cells(1, Collet).Address, "$")(1)
End Function

3. จากนั้นบันทึกและปิดรหัสนี้กลับไปที่แผ่นงานและป้อนสูตรนี้: = ToColletter (50) (50 คือหมายเลขคอลัมน์ที่คุณต้องการแปลงเป็นตัวอักษร ) ลงในเซลล์ว่างแล้วกด เข้าสู่ คีย์เพื่อรับหมายเลขคอลัมน์ดูภาพหน้าจอ:

doc แปลงป้ายชื่อคอลัมน์เป็นหมายเลข 4

สุดยอดเครื่องมือเพิ่มผลผลิตในสำนักงาน

🤖 Kutools AI ผู้ช่วย: ปฏิวัติการวิเคราะห์ข้อมูลโดยยึดตาม: การดำเนินการที่ชาญฉลาด   |  สร้างรหัส  |  สร้างสูตรที่กำหนดเอง  |  วิเคราะห์ข้อมูลและสร้างแผนภูมิ  |  เรียกใช้ฟังก์ชัน Kutools...
คุณสมบัติยอดนิยม: ค้นหา เน้น หรือระบุรายการที่ซ้ำกัน   |  ลบแถวว่าง   |  รวมคอลัมน์หรือเซลล์โดยไม่สูญเสียข้อมูล   |   รอบโดยไม่มีสูตร ...
การค้นหาขั้นสูง: VLookup หลายเกณฑ์    VLookup หลายค่า  |   VLookup ข้ามหลายแผ่น   |   การค้นหาที่ไม่ชัดเจน ....
รายการแบบเลื่อนลงขั้นสูง: สร้างรายการแบบหล่นลงอย่างรวดเร็ว   |  รายการแบบหล่นลงขึ้นอยู่กับ   |  เลือกหลายรายการแบบหล่นลง ....
ผู้จัดการคอลัมน์: เพิ่มจำนวนคอลัมน์เฉพาะ  |  ย้ายคอลัมน์  |  สลับสถานะการมองเห็นของคอลัมน์ที่ซ่อนอยู่  |  เปรียบเทียบช่วงและคอลัมน์ ...
คุณสมบัติเด่น: กริดโฟกัส   |  มุมมองการออกแบบ   |   บาร์สูตรใหญ่    สมุดงานและตัวจัดการชีต   |  ห้องสมุดทรัพยากร (ข้อความอัตโนมัติ)   |  เลือกวันที่   |  รวมแผ่นงาน   |  เข้ารหัส/ถอดรหัสเซลล์    ส่งอีเมลตามรายการ   |  ซุปเปอร์ฟิลเตอร์   |   ตัวกรองพิเศษ (กรองตัวหนา/ตัวเอียง/ขีดทับ...) ...
ชุดเครื่องมือ 15 อันดับแรก12 ข้อความ เครื่องมือ (เพิ่มข้อความ, ลบอักขระ, ... )   |   50 + แผนภูมิ ประเภท (แผนภูมิ Gantt, ... )   |   40+ ใช้งานได้จริง สูตร (คำนวณอายุตามวันเกิด, ... )   |   19 การแทรก เครื่องมือ (ใส่ QR Code, แทรกรูปภาพจากเส้นทาง, ... )   |   12 การแปลง เครื่องมือ (ตัวเลขเป็นคำ, การแปลงสกุลเงิน, ... )   |   7 ผสานและแยก เครื่องมือ (แถวรวมขั้นสูง, แยกเซลล์, ... )   |   ... และอื่น ๆ

เพิ่มพูนทักษะ Excel ของคุณด้วย Kutools สำหรับ Excel และสัมผัสประสิทธิภาพอย่างที่ไม่เคยมีมาก่อน Kutools สำหรับ Excel เสนอคุณสมบัติขั้นสูงมากกว่า 300 รายการเพื่อเพิ่มประสิทธิภาพและประหยัดเวลา  คลิกที่นี่เพื่อรับคุณสมบัติที่คุณต้องการมากที่สุด...

รายละเอียด


แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก

  • เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
  • เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
  • เพิ่มประสิทธิภาพการทำงานของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!
Comments (10)
Rated 5 out of 5 · 1 ratings
This comment was minimized by the moderator on the site
Public Function AlphabetInteger(ByVal letter As String) As Integer
Dim N As Integer
letter = Strings.UCase(letter)
If letter = "A" Then
N = 1
ElseIf letter = "B" Then
N = 2
ElseIf letter = "C" Then
N = 3
ElseIf letter = "D" Then
N = 4
ElseIf letter = "E" Then
N = 5
ElseIf letter = "F" Then
N = 6
ElseIf letter = "G" Then
N = 7
ElseIf letter = "H" Then
N = 8
ElseIf letter = "I" Then
N = 9
ElseIf letter = "J" Then
N = 10
ElseIf letter = "K" Then
N = 11
ElseIf letter = "L" Then
N = 12
ElseIf letter = "M" Then
N = 13
ElseIf letter = "N" Then
N = 14
ElseIf letter = "O" Then
N = 15
ElseIf letter = "P" Then
N = 16
ElseIf letter = "Q" Then
N = 17
ElseIf letter = "R" Then
N = 18
ElseIf letter = "S" Then
N = 19
ElseIf letter = "T" Then
N = 20
ElseIf letter = "U" Then
N = 21
ElseIf letter = "V" Then
N = 22
ElseIf letter = "W" Then
N = 23
ElseIf letter = "X" Then
N = 24
ElseIf letter = "Y" Then
N = 25
ElseIf letter = "Z" Then
N = 26
Else
N = 0
End If
AlphabetInteger = N
End Function


Public Function ColumnNumber(ByVal columnLetter As String) As Integer
Dim I As Integer
Dim sLength As Integer
Dim N As Integer
Dim A As Integer
Dim P As Integer
Dim C As String

sLength = Len(columnLetter)
N = 0
For I = 1 To sLength
P = sLength - I
C = Strings.Mid(columnLetter, I, 1)
A = AlphabetInteger(C)
N = N + A * 26 ^ P
Next I
ColumnNumber = N
End Function
This comment was minimized by the moderator on the site
Best solution =SUBSTITUTE(ADDRESS(1;COLUMN();4);1;"")
Thanks a lot.
Rated 5 out of 5
This comment was minimized by the moderator on the site
A to ZZ
=if(row()>26,char(row()/26+64)&char(mod(row(),26)+64),char(row()+64))
This comment was minimized by the moderator on the site
This formula does not work at rows that are multiples of 26. It gives B@ instead of AZ, C@ instead of BZ, D@ instead of CZ, etc.
Correction:= IF(ROW()>26,(IF(MOD(ROW(),26)=0,CHAR((ROW()-1)/26+64)&CHAR(MOD(ROW()-1,26)+65), CHAR(ROW()/26+64)&CHAR(MOD(ROW(),26)+64))),CHAR(ROW()+64))
This comment was minimized by the moderator on the site
thank you so much!!!...your formula to create the column letter to number really helps me a lot.
This comment was minimized by the moderator on the site
Function ToColletter(Collet) works as volatile function. If something changes anywhere in the sheet. It recalculate everywhere. In my case it makes 15 mil calculations and slowdown the calculation. Do you know how to fix it, if I dont want set application.calculation to manual and than back?
This comment was minimized by the moderator on the site
hola, cuando pego la formula = SUSTITUIR (DIRECCIÓN (1,200,4), 1, "") en una celda no hace nada, solo devuelve la formula, ya sea con 200 o cualquier otro numero
This comment was minimized by the moderator on the site
=CHAR(COLUMN( )+64)
This comment was minimized by the moderator on the site
Not better as it only works with 26 columns.
This comment was minimized by the moderator on the site
For so long I've used R1C1 cell referencing because I didn't know about the =SUBSTITUTE(ADDRESS(1,number,4),1,"") solution. Thank you!!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations