Đánh số thứ tự theo chữ cái alphabe trong excel (4 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

nguyentanphong24

Thành viên mới
Tham gia
5/10/10
Bài viết
16
Được thích
0
Chào anh chị em,
Thông thường chúng ta đánh số thứ tự trong excel bằng số 1,2,3,4,... bằng cách dùng hàm MAX(....)+1.
Nhưng nay mình muốn đánh số thứ tự bằng chữ cái A, B,C,D,E,....
Các cao thủ có cách nào không xin chỉ giáo nha.
 
Chào anh chị em,
Thông thường chúng ta đánh số thứ tự trong excel bằng số 1,2,3,4,... bằng cách dùng hàm MAX(....)+1.
Nhưng nay mình muốn đánh số thứ tự bằng chữ cái A, B,C,D,E,....
Các cao thủ có cách nào không xin chỉ giáo nha.
Cách khác:
PHP:
Function Quy_doi(k As Long) As String
    Dim vArr As Variant
    vArr = Split(Cells(1, k).Address(True, False), "$")
    Quy_doi = vArr(0)
End Function
 

File đính kèm

Cảm ơn bạn đã chia sẽ nha.
Ý mình muốn đánh thứ tự từ ô A1 đến A10, Ô A1 là ký tự A.
Nên mình muốn dùng hàm hay code gì đó khi kéo công thức xuống ô A2 A3 A4 thì nó sẽ thành B C D E.
Thanks!
 
Cảm ơn bạn đã chia sẽ nha.
Ý mình muốn đánh thứ tự từ ô A1 đến A10, Ô A1 là ký tự A.
Nên mình muốn dùng hàm hay code gì đó khi kéo công thức xuống ô A2 A3 A4 thì nó sẽ thành B C D E.
Thanks!

Sau khi kéo đến chữ "Z" mà kéo thêm nữa thì ra chữ gì?
 
Cảm ơn bạn,
Mình muốn thành AA, AB, AC,.......ZZ. Bạn biết cách dùng hàm nào chỉ mình với. Thanks nha!
Chào nguyentanphong24,

Cái này thì chắc chắn VBA sẽ làm gọn gàng hơn. Nhưng chiều ý bạn, mình đưa giải pháp có kết quả như bạn đưa ra, nhưng tự mình đánh giá thì không hay gì cho lắm -+*/, vì phải làm bảng phụ....

Bạn xem file kèm nha.

Nhân tiện, cảm ơn Ban Quản trị đã cho thêm hạn mức gửi file kèm.
 

File đính kèm

Cảm ơn bạn,
Mình muốn thành AA, AB, AC,.......ZZ. Bạn biết cách dùng hàm nào chỉ mình với. Thanks nha!
Nếu dữ liệu bạn khoảng 16.000 dòng (excel 2010 trở đi), bạn có thể dùng CT này :
Mã:
A1=MID(ADDRESS(1,ROW(A1)),2,FIND("$",ADDRESS(1,ROW(A1)),2)-2)
Rồi fill xuống!!!
 
Nếu dữ liệu bạn khoảng 16.000 dòng (excel 2010 trở đi), bạn có thể dùng CT này :
Mã:
A1=MID(ADDRESS(1,ROW(A1)),2,FIND("$",ADDRESS(1,ROW(A1)),2)-2)
Rồi fill xuống!!!
Chào Lenongree,

Mình cũng gặp tương tự ở dòng thứ 16385 thì báo lỗi, nên phải làm cách dỡ hơn là bảng phụ. Phải chi nếu đưa được bảng đó vào mảng há!

Câu lệnh tương tự mình đã dùng:
Mã:
A1=SUBSTITUTE(ADDRESS(1,ROW(A1),4),"1","")

Chúc lenongree ngày vui và năng động.
 
Lần chỉnh sửa cuối:
Chào Lenongree,

Mình cũng gặp tương tự ở dòng thứ 16385 thì báo lỗi, nên phải làm cách dỡ hơn là bảng phụ. Phải chi nếu đưa được bảng đó vào mảng há!

Câu lệnh tương tự mình đã dùng:
Mã:
A1=SUBSTITUTE(ADDRESS(1,ROW(A1),4),"1","")

Chúc lenongree ngày vui và năng động.
hi, thì em nói là khoảng 16.000 dòng thôi anh và excel 2010 trở lên mới được!!!
 
Cảm ơn bạn đã chia sẻ nhiều nha!
Diễn đàn quả là nhiều cao thủ.
 
Rất cảm ơn bạn đã chỉ mình nha. Trên này nhiều người giỏi quá.

Thân.
 
Chào nguyentanphong24,

Cái này thì chắc chắn VBA sẽ làm gọn gàng hơn. Nhưng chiều ý bạn, mình đưa giải pháp có kết quả như bạn đưa ra, nhưng tự mình đánh giá thì không hay gì cho lắm -+*/, vì phải làm bảng phụ....

Bạn xem file kèm nha.

Nhân tiện, cảm ơn Ban Quản trị đã cho thêm hạn mức gửi file kèm.

Xin cảm ơn bạn,
Mình thấy bảng phụ của bạn kì công quá, nếu dữ liệu không quá 16000 dòng thì có thể tham khảo của bạn lenongree bên dưới.
Thân!
 
Nếu dữ liệu bạn khoảng 16.000 dòng (excel 2010 trở đi), bạn có thể dùng CT này :
Mã:
A1=MID(ADDRESS(1,ROW(A1)),2,FIND("$",ADDRESS(1,ROW(A1)),2)-2)
Rồi fill xuống!!!
Cảm ơn bạn,
Nhưng nếu trường hợp gặp phải ô trống muốn bỏ qua(không phải ô liên tục), "fill" qua ô kế tiếp thì mình làm không được.
Bạn thử xem. Thân!
 
Cảm ơn bạn,
Nhưng nếu trường hợp gặp phải ô trống muốn bỏ qua(không phải ô liên tục), "fill" qua ô kế tiếp thì mình làm không được.
Bạn thử xem. Thân!
Chào nguyentanphong24,

Bạn thử xem:
Mã:
A2=SUBSTITUTE(ADDRESS(1,ROW(A2)-COUNTBLANK($A$1:A1),4),"1","")
Copy từ trên xuống.

Chọn bất kỳ ô nào phía dưới (Vd: A15), nhấn delete thử xem.

Chúc bạn ngày vui
 
Chào anh chị em,
Thông thường chúng ta đánh số thứ tự trong excel bằng số 1,2,3,4,... bằng cách dùng hàm MAX(....)+1.
Nhưng nay mình muốn đánh số thứ tự bằng chữ cái A, B,C,D,E,....
Các cao thủ có cách nào không xin chỉ giáo nha.
Nếu bạn còn vận dụng cách đánh thứ tự kiểu này thì tham khảo thêm Hàm viết bằng VBA này nhé.
Đánh thứ tự ký tự bằng Hàm hoặc Code - Sử dụng toán chỉnh hợp
 
Trường hợp mình đánh số thứ tự abc ngắt quãng như kiểu mục 1 gồm a,b,c,d, mục 2 gồm: abc, mục 3 gồm abcde thì làm thế nào để đánh công thức cho nhanh nhất dc ah
 

File đính kèm

Trường hợp mình đánh số thứ tự abc ngắt quãng như kiểu mục 1 gồm a,b,c,d, mục 2 gồm: abc, mục 3 gồm abcde thì làm thế nào để đánh công thức cho nhanh nhất dc ah
Dữ liệu của mục con có vượt qua "z" không?

Sau khi kéo đến chữ "z" mà kéo thêm nữa thì ra chữ gì?
 
Trường hợp mình đánh số thứ tự abc ngắt quãng như kiểu mục 1 gồm a,b,c,d, mục 2 gồm: abc, mục 3 gồm abcde thì làm thế nào để đánh công thức cho nhanh nhất dc ah
Thử thế này
Mã:
=IF(B3="";LOWER(SUBSTITUTE(ADDRESS(1;IFERROR(COLUMN(INDIRECT(C2&1));0)+1;4);"1";""));"")
 
Hàm của mình:
=chusothutu(24), ket quả = X
Mã:
Public Function chusothutu(intnumber As Integer) As String
    Dim STR1 As String
    Dim STR2 As String
    Dim str3 As String
    Dim I As Integer
    Dim J As Integer
    Dim k As Integer
    Dim L As Integer
    Dim a As Double
    
    If logcoso(intnumber, 26) <= 1 Then
        chusothutu = Sothututhanhchucai(intnumber)
    Else
        If logcoso(intnumber - 26, 26) <= 2 Then
            If Int(intnumber / 26) = intnumber / 26 Then
                I = Int(intnumber / 26) - 1
            Else
                I = Int(intnumber / 26)
            End If
            STR1 = Sothututhanhchucai(I)
            k = I * 26
            J = intnumber Mod k
            STR2 = Sothututhanhchucai(J)
            chusothutu = STR1 & STR2
        Else
            If logcoso(intnumber - 26 - 26 * 26, 26) <= 3 Then
                str3 = Sothututhanhchucai((intnumber - 702) Mod 26)
                If Int((intnumber - 702) / 26 / 26) = (intnumber - 702) / 26 / 26 Then
                    STR1 = Sothututhanhchucai(Int((intnumber - 702) / 26 / 26))
                Else
                    STR1 = Sothututhanhchucai(Int((intnumber - 702) / 26 / 26) + 1)
                End If
                a = ((intnumber - 702) / 26)
                If a > Int(a) Then
                    a = Int(a) + 1
                Else
                    a = Int(a)
                End If
                k = a Mod 26
                STR2 = Sothututhanhchucai(k)
                chusothutu = STR1 & STR2 & str3
            Else
                chusothutu = "KO QUAN TAM"
            End If
        End If
    End If
End Function
Public Function Sothututhanhchucai(intso As Integer) As String

    Select Case intso
        Case 1
            Sothututhanhchucai = "A"
        Case 2
            Sothututhanhchucai = "B"
        Case 3
            Sothututhanhchucai = "C"
        Case 4
            Sothututhanhchucai = "D"
        Case 5
            Sothututhanhchucai = "E"
        Case 6
            Sothututhanhchucai = "F"
        Case 7
            Sothututhanhchucai = "G"
        Case 8
            Sothututhanhchucai = "H"
        Case 9
            Sothututhanhchucai = "I"
        Case 10
            Sothututhanhchucai = "J"
        Case 11
            Sothututhanhchucai = "K"
        Case 12
            Sothututhanhchucai = "L"
        Case 13
            Sothututhanhchucai = "M"
        Case 14
            Sothututhanhchucai = "N"
        Case 15
            Sothututhanhchucai = "O"
        Case 16
            Sothututhanhchucai = "P"
        Case 17
            Sothututhanhchucai = "Q"
        Case 18
            Sothututhanhchucai = "R"
        Case 19
            Sothututhanhchucai = "S"
        Case 20
            Sothututhanhchucai = "T"
        Case 21
            Sothututhanhchucai = "U"
        Case 22
            Sothututhanhchucai = "V"
        Case 23
            Sothututhanhchucai = "W"
        Case 24
            Sothututhanhchucai = "X"
        Case 25
            Sothututhanhchucai = "Y"
        Case 26
            Sothututhanhchucai = "Z"
        Case 0
            Sothututhanhchucai = "Z"
    End Select
End Function

Public Function logcoso(cuaB As Integer, cosoA As Integer) As Double
    logcoso = Log(cuaB) / Log(cosoA)
End Function

Anh em tham khảo nhé.
A/e có cách hay hơn cho mình ref nha.
 

File đính kèm

Web KT

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

Back
Top Bottom