我在列中有10个单元格,它们是%错误值。如果任何一个值小于-0.1或大于0.1,并且某个下拉框被选为“否”,那么我需要一个相邻的列被解锁并且能够被编辑。我所做的是命名整个单元格列(Perc_Error1),并用它来引用......我认为这是问题所在,excel没有读取每个单元格的值,而是整个名称值,它可能具有不知道它是什么..遍历单元格值和条件格式
我想通过每个%错误单元格的值进行迭代,但我也需要阅读下拉值以及..这似乎并没有与代码工作,我有
以下是我有:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim i As Variant
ActiveSheet.Unprotect Password:=TRPassword
If Range("Annual_Verif").value = "Yes" Then
Range("Ref_Test_Point").Locked = False
Range("EGM_Target_Reading").Locked = True
Range("EGM_Reading").Locked = False
Range("Perc_Error2").Locked = True
End If
If (Range("Annual_Verif").value = "No") Then Resume Next
For Each i In Range("Perc_Error1").Cells
If (Abs(i.value) > (0.1)) Then
Range("Ref_Test_Point").Locked = False
Range("EGM_Target_Reading").Locked = True
Range("EGM_Reading").Locked = False
Range("Perc_Error2").Locked = True
End If
Next
ActiveSheet.Protect Password:=TRPassword
End Sub
任何帮助表示赞赏...
下拉框的值是从哪里考虑的? 是Perc_Error2的相邻列吗? 什么是EGM_Target_Reading和EGM_Reading单元格? 这段代码的结果是什么,它为什么不起作用? – cronos2546 2014-09-04 22:11:38
下拉=“Annual_Verif”。所有锁定= false的范围都是相邻的列。我把代码放在了错误的地方,我将它移到了特定的工作表变更部分,但是当值大于0.1时,它不会解锁那些单元格。我上面编辑了我的代码... – 2014-09-05 16:18:07