使用VBA或函数判断是否超期

图片说明

目的:想根据输入的结果,提示是否”超1个月“。

某行的两个单元格,如果任意一个单元格输入的值等于上一行的两个单元格中的任意一个值,判断这两行的日期是否大于60天,如果是则出现提示。

即如图所示:如果B9或C9任意有一个单元格输入b,则提示”超1个月“。A列的单元格格式为日期。

想尝试使用if函数,结果完全没有思路。小白求指点。

回答

代码:

Private Sub Worksheet_Change(ByVal Target As Range)

If (Target.Column > 1) And (Target.Row > 2) Then '判断改变的单元格行列均大于

flag = 0 '相同标识

For i = 2 To 3 'for循环,用于遍历两行4个单元格

For j = 2 To 3

If Cells(Target.Row, i).Value = Cells(Target.Row - 1, j).Value And Cells(Target.Row, i).Value <> "" And Cells(Target.Row - 1, j).Value <> "" Then '判断发生改变的行与上一行有相同的数,且非空格

flag = 1 '发生相同则标识置1

End If

Next

Next

If flag = 1 Then '如果标识为1则

rq = Cells(Target.Row, 1).Value - Cells(Target.Row - 1, 1).Value '计算天数

If Abs(rq) > 60 Then '如果天数大于60

MsgBox ("日期超过60天") '提示大于60天

End If

End If

End If

End Sub

运行效果:

图片说明

以上是 使用VBA或函数判断是否超期 的全部内容, 来源链接: utcz.com/a/36201.html

回到顶部