Excel VBA 代码:删除 H 列单元格中 'C+数字' 后面的字符

以下 VBA 代码可以实现检查 H 列数据,删除每个单元格中 'C+数字' 后面的所有字符:

Sub DeleteCNumber()
    Dim lastRow As Long
    Dim i As Long
    
    lastRow = Range("H" & Rows.Count).End(xlUp).Row
    
    For i = 1 To lastRow
        If InStr(1, Range("H" & i).Value, "C") > 0 Then
            Range("H" & i).Value = Left(Range("H" & i).Value, InStr(1, Range("H" & i).Value, "C") - 1) & "C"
        End If
    Next i
End Sub

代码说明:

  1. 定义变量:

    • lastRow: 用于存储 H 列数据最后一行的行号。
    • i: 用于循环遍历每行数据。
  2. 获取最后一行:

    • lastRow = Range("H" & Rows.Count).End(xlUp).Row: 使用 End(xlUp) 方法获取 H 列中最后一个非空单元格的行号,并赋值给 lastRow 变量。
  3. 循环遍历:

    • For i = 1 To lastRow: 使用 For 循环遍历从第一行到最后一行的数据。
  4. 查找 'C+数字':

    • If InStr(1, Range("H" & i).Value, "C") > 0 Then: 使用 InStr 函数查找当前单元格中是否包含字符 'C'。如果包含,则执行删除操作。
  5. 删除 'C+数字' 后面的字符:

    • Range("H" & i).Value = Left(Range("H" & i).Value, InStr(1, Range("H" & i).Value, "C") - 1) & "C": 使用 Left 函数获取 'C' 字符之前的所有字符,并与 'C' 字符拼接成新的字符串,更新到当前单元格中。

运行代码:

  1. 打开 Excel 工作簿。
  2. Alt + F11 打开 VBA 编辑器。
  3. 在左侧的项目窗口中选择你的工作簿,并在右侧的空白处粘贴代码。
  4. 点击运行按钮或按 F5 运行代码。

代码将自动遍历 H 列所有单元格,并删除每个单元格中 'C+数字' 后面的所有字符。

注意:

  • 该代码假设 H 列中所有包含 'C' 字符的单元格,'C' 之后都跟着数字。
  • 如果需要修改代码以删除其他字符,请修改代码中的 InStr 函数参数和 Left 函数参数。

希望本文能够帮助你解决问题!

Excel VBA 代码:删除 H 列单元格中 'C+数字' 后面的字符

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

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