Base64 sang Excel

Mã hóa và giải mã văn bản Base64 là một yêu cầu phổ biến, tuy nhiên Excel và VBA không có chức năng gốc để làm như vậy

Đây là phương pháp hợp lý và hiệu quả nhất mà tôi đã sử dụng để mã hóa văn bản thành Base64

Function EncodeBase64(text$)
    Dim b
    With CreateObject("ADODB.Stream")
        .Open: .Type = 2: .Charset = "utf-8"
        .WriteText text: .Position = 0: .Type = 1: b = .Read
        With CreateObject("Microsoft.XMLDOM").createElement("b64")
            .DataType = "bin.base64": .nodeTypedValue = b
            EncodeBase64 = Replace(Mid(.text, 5), vbLf, "")
        End With
        .Close
    End With
End Function

Và chức năng chị em để giải mã

Function DecodeBase64(b64$)
    Dim b
    With CreateObject("Microsoft.XMLDOM").createElement("b64")
        .DataType = "bin.base64": .text = b64
        b = .nodeTypedValue
        With CreateObject("ADODB.Stream")
            .Open: .Type = 1: .Write b: .Position = 0: .Type = 2: .Charset = "utf-8"
            DecodeBase64 = .ReadText
            .Close
        End With
    End With
End Function

Lưu ý rằng cả hai chức năng này đều hỗ trợ ASCII và phần mở rộng của nó, Unicode UTF-8

Vì vậy, bây giờ bạn có thể mã hóa dễ dàng và hiệu quả ngay cả văn bản khó như sau

யாமறிந்த மொழிகளிலே தமிழ்மொழி போல்

Nếu văn bản trên ở A1, thì

[a2] = EncodeBase64([a1])

sẽ gán văn bản sau vào ô A2

4K6v4K6+4K6u4K6x4K6/4K6o4K+N4K6kIOCuruCviuCutOCuv+CuleCus+Cuv+CusuCvhyDgrqTgrq7grr/grrTgr43grq7gr4rgrrTgrr8g4K6q4K+L4K6y4K+N

Và để trả lại văn bản được mã hóa về bản gốc

[a3] = DecodeBase64([a2])

Và ô A3 sẽ chứa văn bản gốc

யாமறிந்த மொழிகளிலே தமிழ்மொழி போல்

Một lần nữa, các chức năng này sẽ hoạt động trên văn bản ASCII bình thường cũng như Unicode UTF-8. Là một lưu ý phụ, nhận ra rằng các ô của trang tính sẽ hiển thị đầy đủ Unicode, nhưng môi trường VBA, bao gồm Trình soạn thảo VB, MsgBoxes và Biểu mẫu người dùng đều là ANSI và sẽ không hiển thị Unicode

Sau đó, một quy trình sẽ được kích hoạt, trước tiên sẽ phân tích cú pháp JSON từ PayLoad1, PayLoad2, PayLoad3 của mục danh sách SPO

Sau đó, trình kết nối Thêm hàng của excel sẽ lấp đầy ba bảng từ dữ liệu trên trong một bảng excel hiện có

Sheet Excel có 3 Table (Table1,Table2,Table3)

Tên cột của cả 3 bảng đều giống nhau- SrNo, Area, Point, Status, Remark, Image (Tùy chọn). (Tổng cộng 6 cột và 3 bảng)

Sau đó, một email sẽ được gửi đính kèm tệp excel đó vào địa chỉ email người dùng đã đặt trước

Sau đó, tất cả các hàng từ cả 3 bảng sẽ bị xóa bằng trình kết nối excel khác. (Để làm cho nó sẵn sàng cho trình kích hoạt luồng trong tương lai dưới dạng mẫu)

Mọi thứ đều chạy tốt ngoại trừ vấn đề chèn hình ảnh trong bảng excel excel

Cần chèn hình ảnh vào cột Hình ảnh (Tùy chọn) của excel. Điều này là bắt buộc

(Câu hỏi ngoài chủ đề. Làm cách nào tôi có thể tạo chữ ký của mình để nó tự động được thêm vào khi tạo/trả lời một bài đăng trong diễn đàn cộng đồng này?

Hiện tại không có chức năng riêng trong Excel hoặc VBA để mã hóa và giải mã văn bản Base64, mặc dù đây là một yêu cầu phổ biến. Điều này sẽ đảm bảo rằng dữ liệu được vận chuyển mà không bị thay đổi theo bất kỳ cách nào. Trong bài viết này, chúng tôi sẽ trình bày các ví dụ khác nhau để giải mã Base64 trong Excel


Mục lục ẩn

Tải sách bài tập thực hành

Base64 là gì?

2 ví dụ khác nhau để giải mã Base64 trong Excel

1. Áp dụng Mã VBA Excel cho Chuỗi giải mã HTML

2. Tạo hàm do người dùng xác định trong Excel để giải mã Base64

Cách mã hóa Base64 trong Excel

Những điều cần ghi nhớ

Phần kết luận

Những bài viết liên quan

Tải sách bài tập thực hành

Bạn có thể tải sách bài tập về và thực hành với chúng

Giải mã Base64. xlsm


Base64 là gì?

Dữ liệu nhị phân được dịch sang định dạng văn bản ASCII bằng phương pháp mã hóa và giải mã Base64. 6 bit dữ liệu chính xác được cấu thành bởi các chữ số Base64. Do đó, các chữ số 4, 6 bit có thể chứa 3, byte 8 bit (3*8=24). Bạn có thể khá chắc chắn rằng dữ liệu sẽ đến ở phía bên kia của dây mà không bị hỏng vì thông thường bạn có thể tin tưởng vào 64 ký tự giống nhau có trong nhiều bộ ký tự

Dữ liệu nhị phân có thể được biểu diễn trong chuỗi ASCII bằng Base64. Hành động chuyển đổi một biểu diễn base64 của một chuỗi văn bản trông lạ trở lại thành dữ liệu văn bản hoặc nhị phân ban đầu được gọi là “giải mã base64. ”


2 ví dụ khác nhau để giải mã Base64 trong Excel

Một tập lệnh La Mã bao gồm các chữ cái, số, dấu cộng và dấu gạch chéo có thể được tạo bằng kỹ thuật mã hóa Base64. Nó cho phép bạn chuyển đổi ảnh, biểu tượng cảm xúc và thậm chí cả ký tự tiếng Trung thành văn bản “có thể đọc được” để có thể lưu trữ hoặc gửi đi nơi khác. Hãy xem các ví dụ để giải mã Base64 trong Excel


1. Áp dụng Mã VBA Excel cho Chuỗi giải mã HTML

Khả năng kết hợp các tệp ảnh hoặc thậm chí các tài nguyên nhị phân khác vào các tài nguyên văn bản như tệp HTML và CSS khiến Base64 trở nên đặc biệt phổ biến trên World Wide Web

CÁC BƯỚC

  • Đầu tiên, hãy chuyển đến tab Nhà phát triển từ dải băng
  • Thứ hai, nhấp vào Visual Basic từ danh mục Mã để mở Trình chỉnh sửa Visual Basic. Hoặc nhấn ALT+F11 để mở Visual Basic Editor

Base64 sang Excel

  • Điều này sẽ xuất hiện trong Visual Basic Editor nơi chúng tôi viết mã của mình
  • Thứ ba, nhấp vào Mô-đun từ thanh menu thả xuống Chèn

Base64 sang Excel

  • Thao tác này sẽ tạo một Mô-đun trong sổ làm việc của bạn
  • Và, sao chép và dán mã VBA được hiển thị bên dưới

Mã VBA

Public Function HtmlDecode(StringToDecode As Variant) As String
    Set HFile = CreateObject("htmlfile")
    Set a = HFile.createElement("T")
    a.innerHTML = StringToDecode
    HtmlDecode = a.innerText
End Function
  • Hơn nữa, nhấn CTRL + S để lưu tệp

Base64 sang Excel

  • Bây giờ, quay lại trang tính Excel và chèn công thức vào ô đã chọn nơi bạn muốn giải mã văn bản của mình

=HtmlDecode(B5)

  • Sau đó, nhấn phím Enter từ bàn phím của bạn

Base64 sang Excel

  • Kéo biểu tượng Fill Handle xuống để sao chép công thức trên phạm vi. Hoặc, để Tự động điền phạm vi, nhấp đúp vào biểu tượng dấu cộng (+)

Base64 sang Excel

  • Cuối cùng, bạn sẽ thấy kết quả

Base64 sang Excel

Đọc thêm. Cách thay đổi mã hóa trong Excel (3 phương pháp phù hợp)


2. Tạo hàm do người dùng xác định trong Excel để giải mã Base64

Hãy xem một ví dụ khác để giải mã Base64 trong Excel VBA

CÁC BƯỚC

  • Tương tự như vậy, trong Ví dụ-1, chuyển đến tab Nhà phát triển > Visual Basic > Chèn  > Mô-đun
  • Sau đó, sao chép và dán mã VBA bên dưới

Mã VBA

Function Decoding(b64$)
    Dim i
    With CreateObject("Microsoft.XMLDOM").createElement("b64")
        .DataType = "bin.base64": .Text = b64
        i = .nodeTypedValue
        With CreateObject("ADODB.Stream")
            .Open: .Type = 1: .Write i: .Position = 0: .Type = 2: .Charset = "utf-8"
            Decoding = .ReadText
            .Close
        End With
    End With
End Function
  • Để lưu tệp, nhấn CTRL + S

Base64 sang Excel

  • Quay lại trang tính Excel ngay bây giờ và đặt công thức vào ô chứa văn bản bạn muốn giải mã

________số 8

  • Hơn nữa, nhấn phím Enter

Base64 sang Excel

LƯU Ý. Khi kết thúc chức năng Base64, dấu bằng “=” biểu thị phần đệm. Tất cả các bit thường được mã hóa và kích thước tính bằng byte được chia cho ba (bit chia hết cho 24).

  • Để sao chép công thức trong phạm vi, hãy kéo biểu tượng Fill Handle xuống dưới. Ngoài ra, bạn có thể nhấp đúp vào dấu cộng (+) để Tự động điền phạm vi

Base64 sang Excel

  • Cuối cùng, bạn có thể xem kết quả

Base64 sang Excel

Đọc thêm. Cách áp dụng mã hóa UTF 8 trên tệp CSV trong Excel


Cách mã hóa Base64 trong Excel

Mã hóa chủ yếu là chuyển đổi dữ liệu thành định dạng mà chúng tôi cần cho các yêu cầu xử lý thông tin khác nhau. Hãy xem cách chúng tôi có thể mã hóa base64 trong Excel

CÁC BƯỚC

  • Để bắt đầu, hãy nhấp vào tab Nhà phát triển trên ruy-băng
  • Thứ hai, khởi chạy Visual Basic Editor bằng cách nhấp vào Visual Basic
  • Ngoài ra, bạn có thể truy cập Visual Basic Editor bằng cách nhấn ALT+F11
  • Hoặc, nhấp chuột phải vào trang tính và chọn Xem mã từ menu
  • Tiếp theo, chọn Mô-đun từ hộp thả xuống bên dưới Chèn
  • Và cửa sổ visual basic sẽ hiện ra
  • Viết mã ở đó

Mã VBA

Function Encoding(text$)
    Dim i
    With CreateObject("ADODB.Stream")
        .Open: .Type = 2: .Charset = "utf-8"
        .WriteText text: .Position = 0: .Type = 1: i = .Read
        With CreateObject("Microsoft.XMLDOM").createElement("b64")
            .DataType = "bin.base64": .nodeTypedValue = i
            Encoding = Replace(Mid(.text, 5), vbLf, "")
        End With
        .Close
    End With
End Function
  • Lưu tệp bằng cách nhấn CTRL+S trên bàn phím của bạn

Base64 sang Excel

  • Hơn nữa, quay lại trang tính và chèn công thức sau vào đó

=Encoding(B5)

  • Do đó, nhấn phím Enter

Base64 sang Excel

  • Sau đó, kéo biểu tượng Fill Handle để sao chép công thức trên phạm vi. Hoặc, nhấp đúp vào dấu cộng (+). Điều này cũng nhân đôi công thức
  • Và đó là nó. Bạn sẽ nhận được kết quả của bạn

Base64 sang Excel

Đọc thêm. Cách mã hóa dữ liệu khảo sát trong Excel (với các bước đơn giản)


Những điều cần ghi nhớ

  • Bạn nên bắt đầu bằng cách xóa mọi ký tự đệm khỏi phần cuối của chuỗi được mã hóa. Sau đó, bạn chuyển đổi từng ký tự base64 trở lại thành nhị phân 6 bit tương đương. Để chuyển đổi dữ liệu về định dạng ban đầu, trước tiên bạn phải chia các bit thành các khối có kích thước byte (8 bit)
  • Trong khi sử dụng mã VBA, đảm bảo bạn lưu tệp của mình với. phần mở rộng xlsm

Phần kết luận

Các ví dụ trên sẽ hỗ trợ bạn giải mã Base64 trong Excel. Hy vọng điều này sẽ giúp bạn. Vui lòng cho chúng tôi biết trong phần nhận xét nếu bạn có bất kỳ câu hỏi, đề xuất hoặc phản hồi nào. Hoặc bạn có thể lướt qua các bài viết khác của chúng tôi trong ExcelDemy. blog com

Làm cách nào để chuyển đổi Base64 sang CSV?

Đầu vào (Base64) - Dán Base64 của bạn vào đây. Tải lên Tải xuống Chuyển đổi Sao chép vào Clipboard là Tự động. Đầu ra (CSV) - CSV đã chuyển đổi. .
Dán đầu vào Base64 của bạn vào hộp nhập liệu bên trái và nó sẽ tự động chuyển đổi nó thành CSV
Đầu ra CSV là hộp bên phải

Làm cách nào để giải mã Base64 thành tệp?

Để giải mã một tệp có nội dung được mã hóa base64, bạn chỉ cần cung cấp đường dẫn của tệp bằng cờ --decode . Đối với các tệp mã hóa, đầu ra sẽ là một chuỗi rất dài của tệp gốc. Bạn có thể muốn xuất thiết bị xuất chuẩn trực tiếp vào một tệp.

Làm cách nào để chuyển đổi Base64 sang tệp zip?

Cách chuyển đổi BASE64 .
#01. Nhập trang web PDF. Mở trang web BASE64 miễn phí và chọn Chuyển đổi ứng dụng
#02. Tải tệp lên. Nhấp vào bên trong khu vực thả để tải lên hoặc kéo và thả tệp
#03. giới hạn nhỏ. .
#04. Khởi chạy chuyển đổi. .
#05. Nhận kết quả. .
#06. tùy chọn email. .
#07. Hãy cẩn thận về việc lưu trữ kết quả

Dữ liệu được mã hóa Base64 là gì?

Base64 là một nhóm các lược đồ mã hóa nhị phân thành văn bản tương tự biểu thị dữ liệu nhị phân ở định dạng chuỗi ASCII bằng cách dịch nó thành biểu diễn cơ số 64. The term Base64 originates from a specific MIME content transfer encoding.