vbaSub CheckDates Dim ws As Worksheet Dim lastRow As Long Dim currentDate As Date Dim checkDate As Date Dim i As Long 设置工作表 Set ws = ThisWorkbookWorksheets2023年汇总 获取最
这段VBA代码用于检查一个名为"2023年汇总"的工作表中的数据。它会循环检查每一行,如果满足一定条件,则会比较该行的日期和当前日期,如果日期小于当前日期减去20天,则会弹出一个提示信息。
具体的代码解释如下:
-
首先声明所需的变量:工作表(ws)、最后一行的行数(lastRow)、当前日期(currentDate)、检查日期(checkDate)和循环计数器(i)。
-
然后,使用
Set语句将工作表赋给变量ws。 -
使用
ws.Cells(ws.Rows.Count, "X").End(xlUp).Row语句获取最后一行的行数。这里假设"X"列中没有空白行,否则需要根据实际情况进行调整。 -
使用
Date函数获取当前日期,并将其赋给变量currentDate。 -
接下来,使用
For循环从第2行到最后一行,逐行检查数据。 -
在循环内部,首先检查条件是否满足,如果满足则执行下面的操作。
-
使用
ws.Cells(i, "AE").Value检查第i行"AE"列的值是否为"抵押",使用Not IsEmpty(ws.Cells(i, "X").Value)检查第i行"X"列的值是否为空,使用ws.Cells(i, "AD").Value检查第i行"AD"列的值是否为空。 -
如果以上条件都满足,则获取第i行"X"列的日期值,并将其赋给变量checkDate。
-
使用
If语句将检查日期(checkDate)与当前日期减去20天(currentDate - 20)进行比较。 -
如果检查日期小于当前日期减去20天,则使用
ws.Cells(i, "X").Select语句将焦点设置到该单元格。 -
最后,使用
MsgBox函数弹出一个提示信息,显示"日期小于20天"。 -
循环继续,直到检查完所有的行。
请注意,这只是一个示例代码,你需要根据实际需求进行调整。例如,你可能需要更改工作表的名称、列的位置,或者调整日期的比较条件等
原文地址: http://www.cveoy.top/t/topic/iWzN 著作权归作者所有。请勿转载和采集!