VBA 宏代码:检查 Sheet1 表格中列 AE、AD 和 X 并进行条件跳转和提示

本代码用于检查 Sheet1 表格中的列 AE、AD 和 X 是否满足特定条件,并根据条件进行单元格跳转和提示。代码会比较 X 列日期与当前日期,若小于 20 天则跳转至该单元格并显示提示信息。

代码:

Sub CheckColumns()
    Dim ws As Worksheet
    Dim lastRow As Long
    Dim currentDate As Date
    Dim i As Long
    
    Set ws = ThisWorkbook.Sheets('Sheet1') ' 设置要检查的表格
    
    lastRow = ws.Cells(ws.Rows.Count, 'AE').End(xlUp).Row ' 获取 AE 列的最后一行
    currentDate = Date ' 获取当前日期
    
    For i = 2 To lastRow ' 从第2行开始,因为第1行是表头
        If ws.Cells(i, 'AE').Value = '抵押' And ws.Cells(i, 'X').Value <> '' And ws.Cells(i, 'AD').Value = '' Then
            If ws.Cells(i, 'X').Value - currentDate < 20 Then ' 检查 X 列的日期与当前日期比较
                ws.Cells(i, 'X').Select ' 跳转到此单元格
                MsgBox '日期小于20天' ' 提示信息
            End If
        End If
    Next i
End Sub

使用方法:

  1. 打开 Excel 文件。
  2. 按 Alt + F11 进入 VBA 编辑器。
  3. 在 VBA 编辑器中插入一个模块(Insert > Module)。
  4. 将上述代码复制到模块中。
  5. 在 VBA 编辑器中运行 CheckColumns 宏。

代码说明:

  • Set ws = ThisWorkbook.Sheets('Sheet1'):设置要检查的表格为 Sheet1。
  • lastRow = ws.Cells(ws.Rows.Count, 'AE').End(xlUp).Row:获取 AE 列的最后一行。
  • currentDate = Date:获取当前日期。
  • For i = 2 To lastRow:循环遍历 AE 列的每一行,从第 2 行开始,因为第 1 行是表头。
  • If ws.Cells(i, 'AE').Value = '抵押' And ws.Cells(i, 'X').Value <> '' And ws.Cells(i, 'AD').Value = '' Then:检查当前行是否满足以下条件:
    • AE 列的值为 '抵押'。
    • X 列的值不为空。
    • AD 列的值为空。
  • If ws.Cells(i, 'X').Value - currentDate < 20 Then:如果满足上述条件,则检查 X 列的日期与当前日期比较,若小于 20 天,则执行以下操作:
    • ws.Cells(i, 'X').Select:跳转到 X 列的当前单元格。
    • MsgBox '日期小于20天':显示提示信息。

注意:

  • 确保 X 列的日期格式为日期格式。
  • 代码中的 '抵押'、'日期小于20天' 可以根据您的实际情况进行修改。
VBA 宏代码:检查 Sheet1 表格中列 AE、AD 和 X 并进行条件跳转和提示

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

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