Xin hàm chuyển số thành chuỗi ký tự

Liên hệ QC

BinhTam

Thành viên thường trực
Tham gia
2/12/06
Bài viết
238
Được thích
30
Chào các bạn,

Mình có cột A chứa các số nguyên, cột B=char(A1+64). Mình muốn cột B có giá trị giống cột trong bảng tính excel.

Tuy nhiên hàm này chỉ chuyển được 26 chữ cái.

Để chuyển số nguyên tiếp theo theo 27 thành AA, 28 thành AB,...

Rất mong nhận được công thức từ các bạn hoặc nếu đề tài này có rồi rất mong nhận được link tham khảo.

Thanks,
Tâm
 

File đính kèm

  • test.xlsx
    12.8 KB · Đọc: 34
Chào các bạn,

Mình có cột A chứa các số nguyên, cột B=char(A1+64). Mình muốn cột B có giá trị giống cột trong bảng tính excel.

Tuy nhiên hàm này chỉ chuyển được 26 chữ cái.

Để chuyển số nguyên tiếp theo theo 27 thành AA, 28 thành AB,...

Rất mong nhận được công thức từ các bạn hoặc nếu đề tài này có rồi rất mong nhận được link tham khảo.

Thanks,
Tâm
Công thức ở [B1]:
=SUBSTITUTE(ADDRESS(1,A1,2),"$1","")
kéo xuống
Thân
 
Nếu bạn muốn số mã nhiều hơn thì thử công thức sau, tạo được đến mã XFD
Mã:
=SUBSTITUTE(SUBSTITUTE(CELL("address",OFFSET($A$1,,ROW(A1)-1)),"$",""),1,"")
Nếu muốn số mã nhiều hơn thì bạn thử công thức sau cho ô A2 (A1 rỗng), số lượng mã không giới hạn
Mã:
=IF(LEN(SUBSTITUTE(A1,"Z",""))=0,REPT("A",LEN(A1)+1),LEFT(REPLACE(A1,LEN(A1)-SUMPRODUCT(COUNTIF(A1,"*"&REPT("Z",ROW($1:$9)))),9,CHAR(CODE(MID(A1,LEN(A1)-SUMPRODUCT(COUNTIF(A1,"*"&REPT("Z",ROW($1:$9)))),1))+1)&REPT("A",9)),LEN(A1)))
 
Nếu bạn muốn số mã nhiều hơn thì thử công thức sau, tạo được đến mã XFD
Mã:
=SUBSTITUTE(SUBSTITUTE(CELL("address",OFFSET($A$1,,ROW(A1)-1)),"$",""),1,"")

Mình không hiểu lắm! Công thức bài 2 và 3 cũng chơi được đến XFD vậy
???
 
Thanks.

Mình đã tìm được công thức rồi chuyển số sang A-ZZ.
=IF(A1>26,CHAR(64+INT((A1-1)/26))&CHAR(65+MOD(A1-1,26)),CHAR(65+MOD(A1-1,26)))
Ý tưởng công thức này có thể chuyển sang code vba cho các ứng khác.

Have a nice working day!
 
Lần chỉnh sửa cuối:
Sao nhiều người cứ thích cái kiểu này nhỉ. Cần cái gì thì hỏi đúng như vậy có phải nhanh hơn không.
PHP:
Function TaoMa(ByVal Num As Long) As String
Do While Num > 0
    TaoMa = ChrW(65 + ((Num - 1) Mod 26)) & TaoMa
    Num = (Num - 1) \ 26
Loop
End Function
 
Web KT

Bài viết mới nhất

Back
Top Bottom