Làm cách nào để mã hóa / giải mã các ô đã chọn trong Excel?
Trong một số trường hợp, bạn có thể muốn mã hóa một số ô để ngăn các ô được người dùng khác xem, làm cách nào để bạn có thể thực hiện nhanh chóng? Bây giờ trong bài viết này, tôi giới thiệu các thủ thuật để nhanh chóng mã hóa và giải mã nội dung ô đã chọn trong Excel.
Mã hóa hoặc giải mã các ô đã chọn bằng VBA
Mã hóa hoặc giải mã các ô được chọn với Kutools cho Excel
Mã hóa hoặc giải mã các ô đã chọn bằng VBA
Đây là mã VBA có thể nhanh chóng mã hóa hoặc giải mã các ô đã chọn trong Excel.
1. nhấn Alt + F11 các phím để hiển thị Microsoft Visual Basic cho các ứng dụng cửa sổ.
2. nhấp chuột Chèn > Mô-đunvà dán mã VBA bên dưới vào mã mới Mô-đun cửa sổ.
VBA: Mã hóa hoặc giải mã các ô đã chọn.
Private Function StrToPsd(ByVal Txt As String) As Long
'UpdatebyKutoolsforExcel20151225
Dim xVal As Long
Dim xCh As Long
Dim xSft1 As Long
Dim xSft2 As Long
Dim I As Integer
Dim xLen As Integer
xLen = Len(Txt)
For I = 1 To xLen
xCh = Asc(Mid$(Txt, I, 1))
xVal = xVal Xor (xCh * 2 ^ xSft1)
xVal = xVal Xor (xCh * 2 ^ xSft2)
xSft1 = (xSft1 + 7) Mod 19
xSft2 = (xSft2 + 13) Mod 23
Next I
StrToPsd = xVal
End Function
Private Function Encryption(ByVal Psd As String, ByVal InTxt As String, Optional ByVal Enc As Boolean = True) As String
Dim xOffset As Long
Dim xLen As Integer
Dim I As Integer
Dim xCh As Integer
Dim xOutTxt As String
xOffset = StrToPsd(Psd)
Rnd -1
Randomize xOffset
xLen = Len(InTxt)
For I = 1 To xLen
xCh = Asc(Mid$(InTxt, I, 1))
If xCh >= 32 And xCh <= 126 Then
xCh = xCh - 32
xOffset = Int((96) * Rnd)
If Enc Then
xCh = ((xCh + xOffset) Mod 95)
Else
xCh = ((xCh - xOffset) Mod 95)
If xCh < 0 Then xCh = xCh + 95
End If
xCh = xCh + 32
xOutTxt = xOutTxt & Chr$(xCh)
End If
Next I
Encryption = xOutTxt
End Function
Sub EncryptionRange()
Dim xRg As Range
Dim xPsd As String
Dim xTxt As String
Dim xEnc As Boolean
Dim xRet As Variant
Dim xCell As Range
On Error Resume Next
xTxt = ActiveWindow.RangeSelection.Address
Set xRg = Application.InputBox("Select a range:", "Kutools for Excel", xTxt, , , , , 8)
Set xRg = Application.Intersect(xRg, xRg.Worksheet.UsedRange)
If xRg Is Nothing Then Exit Sub
xPsd = InputBox("Enter password:", "Kutools for Excel")
If xPsd = "" Then
MsgBox "Password cannot be empty", , "Kutools for Excel"
Exit Sub
End If
xRet = Application.InputBox("Type 1 to encrypt cell(s);Type 2 to decrypt cell(s)", "Kutools for Excel", , , , , , 1)
If TypeName(xRet) = "Boolean" Then Exit Sub
If xRet > 0 Then
xEnc = (xRet Mod 2 = 1)
For Each xCell In xRg
If xCell.Value <> "" Then
xCell.Value = Encryption(xPsd, xCell.Value, xEnc)
End If
Next
End If
End Sub
3. Sau đó nhấn F5 để thực thi VBA và một hộp thoại bật ra để chọn các ô để mã hóa. Xem ảnh chụp màn hình:
4. Sau đó nhấn vào OK và nhập mật khẩu cho các ô được mã hóa trong một hộp thoại bật ra khác. Xem ảnh chụp màn hình:
5. nhấp chuột OKvà sau đó trong hộp thoại thứ ba, nhập 1 để mã hóa các ô đã chọn, nếu bạn muốn giải mã các ô, hãy nhập 2. Xem ảnh chụp màn hình:
6. nhấp chuột OKvà các ô đã chọn được mã hóa. Xem ảnh chụp màn hình:
Mã hóa hoặc giải mã các ô được chọn với Kutools cho Excel
Với phương pháp trên để mã hóa hoặc giải mã ô hơi phức tạp, nhưng nếu bạn có Kutools cho Excel đã cài đặt, bạn có thể sử dụng Mã hóa ô và Giải mã ô tiện ích để nhanh chóng hoàn thành công việc.
Kutools cho Excel, với hơn 300 chức năng tiện dụng, giúp công việc của bạn dễ dàng hơn. |
Sau cài đặt miễn phí Kutools cho Excel, vui lòng làm như sau:
1. Chọn các ô bạn muốn mã hóa và nhấp vào Kutools Plus > Mã hóa ô. Xem ảnh chụp màn hình:
2. Sau đó nhập và xác nhận mật khẩu trong Mã hóa ô và chọn một kiểu mã hóa trong Mask phần. Xem ảnh chụp màn hình:
3. nhấp chuột Ok or Đăng Nhậpvà bây giờ các ô đã chọn đã được mã hóa.
Nếu bạn cần giải mã các ô, hãy chọn chúng và nhấp vào Kutools Plus > Giải mãvà nhập mật khẩu để giải mã chúng. Xem ảnh chụp màn hình:
Mã hóa và giải mã các ô
Các bài viết bạn có thể quan tâm:
- Làm thế nào để lật ngược dữ liệu nhanh chóng trong Excel?
- Làm cách nào để tạo danh sách tất cả các kết hợp 4 chữ số có thể có trong Excel?
- Làm thế nào để tạo số ngẫu nhiên mà không có bản sao trong Excel?
- Làm cách nào để dán giá trị vào các ô hiển thị / đã lọc chỉ trong Excel?
Công cụ năng suất văn phòng tốt nhất
Nâng cao kỹ năng Excel của bạn với Kutools for Excel và trải nghiệm hiệu quả hơn bao giờ hết. Kutools for Excel cung cấp hơn 300 tính năng nâng cao để tăng năng suất và tiết kiệm thời gian. Bấm vào đây để có được tính năng bạn cần nhất...
Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều
- Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
- Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
- Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!