使用 VBA 删除 H 列中与 L 列匹配的字符

本教程将教你如何编写一个简单的 Excel VBA 代码,用于检查 H 列的每个单元格,找到与 L 列中相同的字符并删除它们。

代码:

Sub DeleteMatch()
    Dim lastRow As Integer
    Dim i As Integer
    Dim j As Integer
    
    lastRow = Cells(Rows.Count, "H").End(xlUp).Row
    
    For i = lastRow To 1 Step -1
        For j = 1 To lastRow
            If Cells(i, "H").Value = Cells(j, "L").Value Then
                Cells(i, "H").Delete Shift:=xlUp
                Exit For
            End If
        Next j
    Next i
    
End Sub

代码解释:

  1. 声明变量: 首先,我们声明三个变量:lastRow 用于存储 H 列的最后一行,ij 用于循环遍历单元格。
  2. 获取最后一行: lastRow = Cells(Rows.Count, "H").End(xlUp).Row 这行代码用于获取 H 列的最后一行。
  3. 嵌套循环: 代码使用两个嵌套循环来遍历 H 列和 L 列的所有单元格。
    • 外部循环: For i = lastRow To 1 Step -1 循环从最后一行开始,逐步遍历到第一行。
    • 内部循环: For j = 1 To lastRow 循环从第一行开始,逐步遍历到最后一行。
  4. 比较字符: If Cells(i, "H").Value = Cells(j, "L").Value Then 这行代码检查 H 列中的当前单元格的值是否与 L 列中的当前单元格的值相同。
  5. 删除匹配项: Cells(i, "H").Delete Shift:=xlUp 如果找到匹配项,则删除 H 列中的当前单元格,并向上移动其他单元格以填补空白。
  6. 退出内部循环: Exit For 一旦找到匹配项,内部循环就会退出,继续检查下一个 H 列中的单元格。

使用说明:

  1. 打开您的 Excel 工作簿,并确保 H 列和 L 列包含您要比较的字符。
  2. 在 Excel 的 VBA 编辑器中粘贴代码。
  3. 点击运行按钮,或者使用快捷键 F5 运行代码。

代码将自动检查 H 列中的所有单元格,并删除与 L 列中相同的字符。

注意:

  • 此代码会删除 H 列中的所有匹配项,即使多个单元格包含相同的字符。
  • 如果您只想删除每个匹配项的第一个实例,请修改代码以在删除匹配项后退出内部循环。

希望这个教程对您有所帮助!如果您有任何疑问,请随时在评论中提出。

Excel VBA: 删除 H 列中与 L 列匹配的字符

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

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