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,用于存储数据最后一行的行号;
  2. 然后通过Range("H" & Rows.Count).End(xlUp).Row语句获取数据最后一行的行号;
  3. 使用For循环遍历每一行数据,使用InStr函数查找每个单元格中是否包含"C"字符,如果包含则执行删除操作,即保留"C"字符之前的数据,删除"C"字符之后的数据;
  4. 最后使用Left函数取得"C"字符之前的数据,与"C"字符拼接成新的字符串并更新到单元格中。
写一个excel的vba逻辑是检查H列的数据不限字符数找到单元格中符合C+数字的字符并删除C+数字后面的字符

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

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