Hur krypterar / dekrypterar du valda celler i Excel?
I vissa fall kanske du vill kryptera vissa celler för att förhindra att cellerna visas av andra användare, hur kan du få det gjort snabbt? Nu i den här artikeln introducerar jag knep för att snabbt kryptera och dekryptera valt cellinnehåll i Excel.
Kryptera eller dekryptera valda celler med VBA
Kryptera eller dekryptera markerade celler med Kutools för Excel
Kryptera eller dekryptera valda celler med VBA
Här är en VBA-kod som snabbt kan kryptera eller dekryptera valda celler i Excel.
1. Tryck Alt + F11 för att visa Microsoft Visual Basic för applikationer fönster.
2. klick Insert > Modulernaoch klistra in under VBA-koden till den nya Modulerna fönster.
VBA: Kryptera eller dekryptera valda celler.
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. Tryck sedan på F5 för att utföra VBA, och en dialog dyker upp för att välja celler som ska krypteras. Se skärmdump:
4. Klicka sedan OK och ange lösenord för de krypterade cellerna i en annan dialog som visas. Se skärmdump:
5. klick OKoch skriv sedan i den tredje dialogen 1 för att kryptera valda celler, om du vill dekryptera celler, ange 2. Se skärmdump:
6. klick OKoch de valda cellerna är krypterade. Se skärmdump:
Kryptera eller dekryptera markerade celler med Kutools för Excel
Med ovanstående metod för att kryptera eller dekryptera celler är lite komplex, men om du har Kutools för Excel installerad kan du använda Kryptera celler och Dekryptera celler verktyg för att snabbt få det gjort.
Kutools för Excel, med mer än 300 praktiska funktioner, gör dina jobb enklare. |
Efter gratis installation Kutools för Excel, gör så här:
1. Markera cellerna du vill kryptera och klicka på Kutools Plus > Kryptera celler. Se skärmdump:
2. Ange sedan och bekräfta lösenordet i Kryptera celler dialogrutan och välj en krypteringstyp i Mask sektion. Se skärmdump:
3. klick Ok or Ansök, och nu är de valda cellerna krypterade.
Om du behöver dekryptera cellerna markerar du dem och klickar på Kutools Plus > Avkrypteraoch ange lösenordet för att dekryptera dem. Se skärmdump:
Kryptera och dekryptera celler
Artiklarna du kanske är intresserad av:
- Hur vänder man snabbt data upp och ner i Excel?
- Hur genererar jag en lista över alla möjliga 4-siffriga kombinationer i Excel?
- Hur genererar jag slumptal utan duplikat i Excel?
- Hur klistrar man in värden i synliga / filtrerade celler endast i Excel?
Bästa kontorsproduktivitetsverktyg
Uppgradera dina Excel-färdigheter med Kutools för Excel och upplev effektivitet som aldrig förr. Kutools för Excel erbjuder över 300 avancerade funktioner för att öka produktiviteten och spara tid. Klicka här för att få den funktion du behöver mest...
Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare
- Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
- Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
- Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!