Перейти к содержимому

Как зашифровать/расшифровать выбранные ячейки в Excel?

Author: Sun Last Modified: 2025-08-07

В некоторых случаях вы можете захотеть зашифровать некоторые ячейки, чтобы предотвратить их просмотр другими пользователями. Как это можно сделать быстро? В этой статье я расскажу о способах быстрого шифрования и расшифровки содержимого выбранных ячеек в Excel.

Шифрование или расшифровка выбранных ячеек с помощью VBA

Шифрование или расшифровка выбранных ячеек с помощью Kutools для Excel good idea3


Шифрование или расшифровка выбранных ячеек с помощью VBA

Вот код VBA, который может быстро зашифровать или расшифровать выбранные ячейки в Excel.

1. Нажмите клавиши Alt + F11, чтобы открыть окно Microsoft Visual Basic for Applications.

2. Щелкните Вставить > Модуль и вставьте следующий код VBA в новое окно Модуль.

VBA: Зашифровать или расшифровать выбранные ячейки.

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. Затем нажмите F5 для выполнения VBA, и появится диалоговое окно для выбора ячеек для шифрования. См. скриншот:
vba code to select the data to protect

4. Затем нажмите OK и введите пароль для зашифрованных ячеек в другом появившемся диалоговом окне. См. скриншот:
vba code to enter a password

5. Нажмите OK, а затем в третьем диалоговом окне введите 1 для шифрования выбранных ячеек, если вы хотите расшифровать ячейки, введите 2. См. скриншот:
type 1 to encrypt selected cells, type 2 to decrypt cells

6. Нажмите OK, и выбранные ячейки будут зашифрованы. См. скриншот:
the selected cells are encrypted


Шифрование или расшифровка выбранных ячеек с помощью Kutools для Excel

Использование вышеописанного метода для шифрования или расшифровки ячеек немного сложное, но если у вас установлен Kutools для Excel, вы можете использовать инструменты Зашифровать ячейки и Расшифровать ячейки для быстрого выполнения задачи.

Kutools для Excel предлагает более 300 продвинутых функций для упрощения сложных задач, повышая креативность и эффективность. Интеграция с возможностями ИИ позволяет Kutools автоматизировать задачи с высокой точностью, делая управление данными без усилий. Подробная информация о Kutools для Excel...  Бесплатная пробная версия...

После бесплатной установки Kutools для Excel сделайте следующее:

1. Выберите ячейки, которые вы хотите зашифровать, и нажмите Kutools Plus > Зашифровать ячейки. См. скриншот:
click Encrypt Cells feature of kutools

2. Затем введите и подтвердите пароль в диалоговом окне Зашифровать ячейки и выберите тип шифрования в разделе Маска . См. скриншот:
enter and confirm the password in the Encrypt Cells dialog

3. Нажмите Ok или Применить, и теперь выбранные ячейки зашифрованы.
 the selected cells are encrypted

Если вам нужно расшифровать ячейки, выберите их и нажмите Kutools Plus > Расшифровать, и введите пароль для их расшифровки. См. скриншот:

click Kutools Plus > Decrypt  enter the password to decrypt

Зашифровать и расшифровать ячейки

 

Статьи, которые могут вас заинтересовать:

Лучшие инструменты для повышения продуктивности в Office

🤖 Kutools AI Aide: Переворот в анализе данных на основе: Интеллектуальное выполнение   |  Сгенерировать код  |  Создать Пользовательские Формулы  |  Анализ данных и генерация диаграмм  |  Вызов Kutools Functions
Популярные функции: Найти, выделить или отметить дубликаты   |  Удалить пустые строки   |  Объединить столбцы или ячейки без потери данных   |   Округлить...
Супер ПОИСК: VLookup с несколькими критериями    VLookup с несколькими значениями  |   Многолистовой поиск   |   Распознавание нечетких соответствий ....
Расширенный раскрывающийся список: Быстро создать раскр. список   |  Зависимый раскрывающийся список   |  Множественный выбор в раскрывающемся списке ....
Менеджер столбцов: Добавить определенное количество столбцов  |  Переместить столбцы  |  Переключить статус видимости скрытых столбцов  |  Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка фокусировки   |  Дизайн листа   |   Улучшенная строка формулы    Управление книгой и листами   |  Библиотека автотекста (Auto Text)   |  Выбор даты   |  Объединить данные   |  Шифрование/Расшифровка ячеек    Отправить письмо по списку   |  Супер фильтр   |   Специальный фильтр (фильтр по жирному/курсиву/зачеркиванию...) ...
Топ–15 наборов инструментов: 12 текстовых инструментов (Добавить текст, Удалить определенные символы, ...)   |   50+ типов диаграмм (Диаграмма Ганта, ...)   |   40+ практических формул (Расчет возраста на основе даты рождения, ...)   |   19 инструментов вставки (Вставить QR-код, Вставить изображение из пути, ...)   |  12 инструментов преобразования (Преобразовать в слова, Конвертация валюты, ...)   |  7 инструментов объединения и разделения (Расширенное объединение строк, Разделить ячейки, ...)   |   ... и многое другое
Используйте Kutools на вашем предпочитаемом языке – поддерживаются английский, испанский, немецкий, французский, китайский и более40 других языков!

Повысьте свои навыки работы в Excel с Kutools для Excel и ощутите новую эффективность. Kutools для Excel предлагает более300 расширенных функций для повышения продуктивности и экономии времени.  Щелкните здесь, чтобы получить наиболее нужную вам функцию...


Office Tab добавляет вкладочный интерфейс в Office, делая вашу работу значительно проще

  • Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Открывайте и создавайте несколько документов во вкладках одного окна, а не в новых окнах.
  • Увеличьте свою продуктивность на50% и сократите сотни кликов мышью ежедневно!