以下代码有效,但是正在寻找一种解决方案,以避免取消保护/保护代码的注释掉部分。范围“ O”是受保护单元格中的公式。调用范围“ O”中的值时,我始终收到类型不匹配错误。试图弄清楚如何创建一个名为“ Check”的变量来计算
=IFERROR(F168-(VLOOKUP($B168,eac_equipment_list!$P:$S,2,FALSE)),0)
并运行循环。这样可以避免使用unprotect / protect命令降低我的工作簿速度吗?谢谢!
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim i As Integer
For i = 16 To 194
If Range("O" & i) = 0 Then
''do nothing
End If
If Range("O" & i) <> 0 Then
answer = MsgBox("Price Change. Are you sure?", vbYesNo)
''Sheets("offer_sheet").Unprotect Password:="dvs2018"
End If
If answer = vbNo Then
Range("F" & i).Formula = "=IFERROR(VLOOKUP($B" & i & ",eac_equipment_list!$P:$S,2,FALSE),"""")"
End If
If answer = vbYes Then
Range("O" & i) = "0"
End If
Next i
''Sheets("offer_sheet").Protect Password:="dvs2018"
End Sub