Как исправить синтаксическую ошибку компиляции в первой строке моего кода - PullRequest
0 голосов
/ 16 апреля 2019

Я пытаюсь использовать базовый код для блокировки всех моих ячеек формулами с помощью пароля.

Я пытался найти различные варианты решения этой проблемы, но, похоже, ни одно из них не касается конкретно общей проблемы и скорее связано с очень конкретными проблемами. Выделенная строка - excel - самая первая показанная строка.

Sub ProtectFormulas()
    Dim strPassword As String
    With ActiveSheet
    .Unprotect
    .Cells.Locked = False
    .Cells.SpecialCells(xlCellTypeFormulas).Locked = True
    .Protect AllowDeletingRows:=True
    strPassword = InputBox(“Please enter the password (optional)”
    ActiveSheet.Protect Password:=strPassword
End With
End Sub

Я ожидаю, что появится диалоговое окно, чтобы я мог ввести пароль для блокировки всех формул, но я сразу же получил ошибку.

1 Ответ

0 голосов
/ 16 апреля 2019

Когда я запускал ваш код, я увидел, что в коде нет проблем, если в вашем активном листе есть формула, содержащая ячейку. Убедитесь, что есть хотя бы одна ячейка, которая содержит формулу. чтобы пропустить эту ошибку, используйте приведенный ниже код в первой строке вашего подпрограммы, чтобы вы никогда не столкнулись с ошибкой, если в вашем активном листе нет формулы, содержащей ячейку. on error resume next

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...