如何解决在试图解锁一些单元格的VBA Excel中的错误1004?

我知道在错误1004中已经有一堆线程了,但是在挖掘完毕后我还没有发现类似于我的情况。 我试图locking工作簿,除了一系列的单元格,使用我在这里find的信息和下面的代码:

If SecurityActive= "yes" Then Worksheets("Invullen").Range("D7, D9, D11, D15, D17, D19, D23, J12, J14:J16").Locked = False 'INVULLEN Worksheets("Invullen").Protect UserInterfaceOnly:=True 'AFDRUKKEN Worksheets("Afdrukken").Protect UserInterfaceOnly:=True 'AFDRUKKENBEFR Worksheets("AfdrukkenBEfr").Protect UserInterfaceOnly:=True 'BENL Worksheets("BEnl").Protect UserInterfaceOnly:=True 'BEFR Worksheets("BEfr").Protect UserInterfaceOnly:=True 'NL Worksheets("NL").Protect UserInterfaceOnly:=True 'FR Worksheets("FR").Protect UserInterfaceOnly:=True 'UK Worksheets("UK").Protect UserInterfaceOnly:=True 'DE Worksheets("DE").Protect UserInterfaceOnly:=True 'TECHNISCH Worksheets("Technisch").Protect UserInterfaceOnly:=True End If 

SecurityActive是我用来快速更改的variables,我希望保证工作簿的安全。 该错误突出显示了代码的第二行。 有没有人如何解决这个错误?

运行时1004将被抛出,同时试图改变单元格属性,而表仍然受到保护。

使用:

 Worksheets("Invullen").Unprotect Worksheets("Invullen").Range("D7, D9, D11, D15, D17, D19, D23, J12, J14:J16").Locked = False '... Other stuff Worksheets("Invullen").Protect UserInterfaceOnly:=True 

等等

由于Excel 2016运行时错误1004比直到2010年更具体。保护它会抛出“1004无法设置Range类的locking属性”。

编辑:当地址范围中的一个或多个单元格合并单元格时,也会引发此错误。