我在此网站上找到了特定单元格的代码
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("A1") > 0.5 Then
MsgBox "Discount too high"
End If
End Sub
但是我想知道是否有可能让整个列而不是一个特定的单元工作?
答案 0 :(得分:0)
请尝试使用此事件代码:
Private Sub Worksheet_Calculate()
Dim rr As Range, r As Range
Set rr = Range("A:A").Cells.SpecialCells(xlCellTypeFormulas)
For Each r In rr
If r.Value > 0.5 Then
MsgBox "Discount too high"
End If
Next r
End Sub
修改#1:强>
如果要将邮件限制为单行,请删除第一个子邮件并将其替换为:
Private Sub Worksheet_Change(ByVal Target As Range)
rt = Target.Row
If Range("A" & rt) > 0.5 Then
MsgBox "Discount too high"
End If
End Sub
答案 1 :(得分:0)
我想说这是在Excel中做事的错误方式:)。
我可以建议以下内容: 1.根据值添加条件格式到单元格,例如> 0.5 2.在此单元格旁边的单元格中添加一个简单的IF公式,表示错误。
使用事件将禁止撤消操作