首页 > 解决方案 > 如何修复我的代码第一行中的编译语法错误

问题描述

我正在尝试使用一些基本代码来使用带有密码的公式锁定我的所有单元格。

我已经尝试过查看这个问题的各种解决方案,但似乎没有一个专门解决一般问题,而是关注非常具体的问题。突出显示的行是 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

我希望会弹出一个对话框,因此我可以输入密码来锁定所有公式,但我立即收到错误消息。

标签: excelvba

解决方案


当我运行您的代码时,我发现在您的活动表中有一个包含单元格的公式的代码中没有问题。确保至少有一个单元格包含公式。为了跳过此错误,请在您的子代码的第一行使用下面的代码,这样如果您的活动表没有任何包含单元格的公式,您将永远不会遇到错误。 on error resume next


推荐阅读