写一个excel的vba逻辑是检查H列的数据不限字符数找到单元格中符合C+数字的字符并删除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
说明:
- 首先定义了一个变量lastRow,用于存储数据最后一行的行号;
- 然后通过Range("H" & Rows.Count).End(xlUp).Row语句获取数据最后一行的行号;
- 使用For循环遍历每一行数据,使用InStr函数查找每个单元格中是否包含"C"字符,如果包含则执行删除操作,即保留"C"字符之前的数据,删除"C"字符之后的数据;
- 最后使用Left函数取得"C"字符之前的数据,与"C"字符拼接成新的字符串并更新到单元格中。
原文地址: https://www.cveoy.top/t/topic/bjqP 著作权归作者所有。请勿转载和采集!