以下是用VBA编写的代码来实现所描述的功能:

Sub CheckCells()
    Dim ws As Worksheet
    Dim lastRow As Long
    Dim currentDate As Date
    Dim i As Long
    
    ' 设置要检查的工作表
    Set ws = ThisWorkbook.Sheets("Sheet1")
    
    ' 获取当前日期
    currentDate = Date
    
    ' 获取列AE和列AD的最后一行
    lastRow = ws.Cells(ws.Rows.Count, "AE").End(xlUp).Row
    
    ' 循环检查每一行
    For i = 2 To lastRow
        ' 检查条件
        If ws.Range("AE" & i).Value = "抵押" And ws.Range("X" & i).Value <> "" And ws.Range("AD" & i).Value = "" Then
            ' 获取日期差
            Dim dateDiff As Long
            dateDiff = DateDiff("d", ws.Range("X" & i).Value, currentDate)
            
            ' 检查日期差是否小于20天
            If dateDiff < 20 Then
                ' 弹窗提示并跳转到单元格
                MsgBox "该单元格需要检查:" & ws.Range("X" & i).Address
                ws.Range("X" & i).Select
                Exit Sub
            End If
        End If
    Next i
    
    ' 如果没有符合条件的单元格,显示完成提示
    MsgBox "检查完成!"
End Sub

要使用此代码,请按以下步骤操作:

  1. 打开Excel文件,按下Alt + F11打开VBA编辑器。
  2. 在VBA编辑器中,插入一个新的模块。
  3. 将上述代码复制粘贴到新模块中。
  4. 关闭VBA编辑器。
  5. 在Excel中,按下Alt + F8打开宏对话框。
  6. 选择"CheckCells"宏,并点击“运行”按钮。

这将会检查Sheet1表格中符合条件的单元格,并在满足条件的情况下弹窗提示并跳转到相应的单元格


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

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