Cách thay thế các chữ cái trong một ô bằng các số được xác định từ một bảng riêng biệt


0

Tôi có một ô có các số và chữ hỗn hợp (ví dụ AA12CC45WR) và chúng là ngẫu nhiên.

Trên một trang tính khác, tôi có một bảng có tương đương với mỗi chữ cái như (ô A1, B1)

A=1
C=25
W=66
R=77 

cho các chữ cái ABC cho đến Z

Giải pháp nên là 11122525456677

Làm cách nào để tạo một hàm để thay thế tất cả các chữ cái bằng các số được xác định trong bảng khác?


Là văn bản được giải mã luôn luôn 10 ký tự?
Rachel Hettinger

A1chứa 1hoặc chuỗi A=1?
jonsca

thông thường văn bản sẽ có 22 chữ số
maas

Để làm rõ hơn ô A1: chứa A và ô B1 chứa giá trị là 1
maas

Bạn có mở để sử dụng một chức năng VBA tùy chỉnh?
Rachel Hettinger

Câu trả lời:


1

Đây là một chức năng sẽ thực hiện giải mã. Đặt phần này trong một mô-đun và cập nhật tham chiếu Phạm vi khi cần thiết. Nếu ô A1có giá trị "mã" ban đầu, hãy nhập công thức: =Decode(A1)vào ô khác để nhận giá trị "được giải mã".

Public Function Decode(Code As String) As String
    Dim iIdx As Integer
    Dim sChar As String
    Dim sResult As String
    For iIdx = 1 To Len(Code)
        sChar = UCase$(Mid$(Code, iIdx, 1))
        If Asc(sChar) >= 65 And Asc(sChar) <= 90 Then
            sChar = WorksheetFunction.VLookup(sChar, Worksheets("Sheet2").Range("A1:B26"), 2, False)
        End If
        sResult = sResult & sChar
    Next iIdx
    Decode = sResult
End Function

Tôi nên đặt nó ở đâu?
maas

Đặt mã trong một mô-đun thông thường (không phải mô-đun lớp được gắn với một trang tính) - đi đến Trình chỉnh sửa VB, menu Chèn và bấm Mô-đun.
Rachel Hettinger
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.