使用 VBA 删除 Excel 中 H 列与 L 列匹配的数据

本教程将介绍如何使用 VBA 代码在 Excel 中删除 H 列中与 L 列相同数据的行。

代码示例

Sub deleteMatchingCells()
    Dim lastRow As Long
    Dim i As Long
    Dim j As Long
    Dim hValue As String
    Dim lValue As String
    
    lastRow = Cells(Rows.Count, "H").End(xlUp).Row ' 获取 H 列的最后一行
    For i = lastRow To 1 Step -1 ' 从最后一行向上循环
        hValue = Cells(i, "H").Value ' 获取当前行 H 列的值
        lValue = Cells(i, "L").Value ' 获取当前行 L 列的值
        If hValue = lValue Then ' 如果两个值相等,则删除当前行
            Rows(i).Delete
        End If
    Next i
End Sub

代码解释

  1. lastRow = Cells(Rows.Count, "H").End(xlUp).Row: 获取 H 列的最后一行。
  2. For i = lastRow To 1 Step -1: 从最后一行向上循环遍历所有行。
  3. hValue = Cells(i, "H").Value: 获取当前行 H 列的值。
  4. lValue = Cells(i, "L").Value: 获取当前行 L 列的值。
  5. If hValue = lValue Then: 如果两个值相等,则删除当前行。
  6. Rows(i).Delete: 删除当前行。

注意事项

  • 代码假定 H 列和 L 列的数据类型均为文本。如果数据类型为数字或日期,请相应更改代码中的变量类型和比较运算符。
  • 此代码不会考虑任何筛选或隐藏行。如果您有任何特殊要求,请在评论中提出。
Excel VBA: 删除 H 列与 L 列匹配的数据

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

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