Excelmacros来更改单元格值,并根据另一个单元格值禁用列

如果单元格1的值为A1,则单元格2的值应为B1,列H应禁用。

如果单元格1的值是A2,那么单元格2的值应该是B2,列H不应该被禁用。

这里是代码,但不知何故,它不适用于值“A1”。

Private Function func1(pVal as String) as String If pVal = "A1" func1="B1" Worksheets("Sheet1").Range("H1:h100").Locked=True ElseIF pVal="A2" func1="B2" EndIF End func1 

当用户在通话1中select“A1”时,在单元格2中出现错误#值。

工作表单元格中使用的函数只能返回一个值,不能locking或解锁任何东西。 最好的哟可以没有一个是:

 Public Function func1(pVal As String) As String func1 = "What Ever" If pVal = "A1" Then func1 = "B1" Else If pVal = "A2" Then func1 = "B2" End If End If End Function