以下是使用VBA编写的代码:

Sub CompareDates()
    Dim ws As Worksheet
    Dim lastRow As Integer
    Dim currentDate As Date
    Dim dateDiff As Integer
    Dim cellAE As Range, cellAD As Range, cellX As Range
    
    ' 设置工作表
    Set ws = ThisWorkbook.Sheets("Sheet1")
    
    ' 获取最后一行
    lastRow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row
    
    ' 获取当前日期
    currentDate = Date
    
    ' 循环检查每一行
    For i = 2 To lastRow
        Set cellAE = ws.Range("AE" & i) ' 列AE
        Set cellAD = ws.Range("AD" & i) ' 列AD
        Set cellX = ws.Range("X" & i) ' 列X
        
        ' 检查条件
        If cellAE.Value = "抵押" And cellX.Value <> "" And cellAD.Value = "" Then
            ' 计算日期差
            dateDiff = DateDiff("d", cellX.Value, currentDate)
            
            ' 比较日期差是否小于20天
            If dateDiff < 20 Then
                ' 跳转到此单元格
                cellX.Select
                
                ' 提示
                MsgBox "日期差小于20天"
            End If
        End If
    Next i
End Sub

请将此代码复制到Excel VBA编辑器中的模块中,并在运行之前确保已将Sheet1命名为所需的工作表名称。运行此宏后,它将按照指定的条件检查每一行,并根据需要跳转到相应的单元格并显示提示


原文地址: http://www.cveoy.top/t/topic/iWvp 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录