Excel VBA: 检查列AE、AD、X 并比较日期,小于20天则跳转并提示
"打开检查Sheet1表格中列AE,列AD,列X。如果列AE为"抵押",列X为"不是空值",列AD为"空"。则检查 列X"日期"与当前"日期"比较,如小于20天则跳转到此单元格,并提示。用VBA编写" \n\n以下是一个用VBA编写的代码示例,用于实现你描述的功能:\n\nvba\nSub CheckColumns()\n Dim ws As Worksheet\n Dim lastRow As Long\n Dim currentDate As Date\n Dim compareDate As Date\n Dim cell As Range\n \n ' 设置当前工作表\n Set ws = ThisWorkbook.Sheets(\"Sheet1\")\n \n ' 获取最后一行\n lastRow = ws.Cells(ws.Rows.Count, \"AE\").End(xlUp).Row\n \n ' 获取当前日期\n currentDate = Date\n \n ' 循环检查每一行\n For Each cell In ws.Range(\"AE2:AE\" & lastRow)\n ' 检查条件\n If cell.Value = \"抵押\" And cell.Offset(0, 22).Value <> \"\" And cell.Offset(0, -1).Value = \"\" Then\n ' 获取比较日期\n compareDate = cell.Offset(0, 22).Value\n ' 比较日期差异\n If compareDate < currentDate - 20 Then\n ' 跳转到单元格\n cell.Offset(0, 22).Select\n ' 提示\n MsgBox \"该日期小于20天!\"\n End If\n End If\n Next cell\n \n ' 清除选择\n Application.CutCopyMode = False\nEnd Sub\n\n\n请注意,这段代码假定你要检查的工作表名称为"Sheet1",并且要检查的列分别为AE、AD和X。如果你的实际情况不同,请相应地更改代码中的工作表名称和列号。
原文地址: https://www.cveoy.top/t/topic/qCxP 著作权归作者所有。请勿转载和采集!