VBA警报弹出以显示列中的值

时间:2018-06-28 03:46:41

标签: vba excel-vba excel

我正在尝试创建一个VBA-在excel列中弹出的警报。 在基于某些计算的excel工作表中,将计算一些Growth%(H列),如果Growth%> 20%,则会生成一个警告弹出窗口,询问原因码,该原因码需要放在第一栏中。 该代码对于特定的单元格(例如$(document).ready(function(){ //you jquery code goes here}); )工作正常,但是当我将其扩展一个范围(例如$(document).ready(function(){ var $submitMessage = $('.form-submitted'); var $submitBtn = $('form button'); $submitMessage.hide(); $submitBtn.click(function() { $submitMessage.slideDown(2000); }); }); )时,它无法正常工作。 有人可以帮助我吗? 代码:

H7

%增长原因码 34% 20% 18%

excel工作表的更新快照:enter image description here

现在,ASM / RSM可以更新其预测,并自动在H列中计算出增长百分比...相同的值将复制到I列中(如特殊粘贴),如果增长百分比> 20%,则警报将弹出...

我正在使用的代码(在JC Guidicelli的帮助下):

H7:H700

结束子

问题是要计算Growth%<20%,它工作正常……但是对于Growth%> 20%,它会弹出弹出窗口,但会卡住。 有人可以在这方面帮助我吗。

1 个答案:

答案 0 :(得分:1)

编辑: 当您在所选范围内添加或粘贴值时,将显示消息;) 尝试让我知道,它对我有用:

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim xCell As Range, Rg As Range
    On Error Resume Next
    Set Rg = Application.Intersect(Target, Range("H7:H700"))
    If Not Rg Is Nothing Then
        For Each xCell In Rg
            If xCell.Value > 0.2 Then
                xCell.Select
                MsgBox "GR% >20%, Put the reason code"
                Exit Sub
            End If
        Next
    End If
End Sub