Excel VBA: 将H列数据中'C+数字'后面的字符剪切到I列

本代码用于检查Excel表格H列数据,将以'C'开头且后面跟着数字的单元格数据,将其后面的字符剪切到I列,并将'C+数字'保留在H列。

Sub CutCPlus()
    Dim lastRow As Long
    lastRow = Cells(Rows.Count, "H").End(xlUp).Row '获取最后一行
    
    For i = 2 To lastRow '循环检查H列数据
        If Left(Cells(i, "H").Value, 1) = "C" And IsNumeric(Right(Cells(i, "H").Value, Len(Cells(i, "H").Value) - 1)) Then
            '如果H列单元格以C开头,且后面跟着数字,则执行剪切操作
            Cells(i, "I").Value = Right(Cells(i, "H").Value, Len(Cells(i, "H").Value) - 1) '将数字后面的字符剪切到I列
            Cells(i, "H").Value = Left(Cells(i, "H").Value, 1) & Val(Right(Cells(i, "H").Value, Len(Cells(i, "H").Value) - 1)) '将C+数字留在H列
        End If
    Next i
    
End Sub

使用方法:

  1. 打开你的Excel表格。
  2. 按下Alt + F11打开VBA编辑器。
  3. 在VBA编辑器中,点击插入 -> 模块,将代码粘贴到模块中。
  4. 点击运行按钮或按下F5运行代码。

代码说明:

  • lastRow 变量用于获取H列的最后一行。
  • 循环遍历H列数据,判断单元格是否以'C'开头,且后面跟着数字。
  • 如果满足条件,则将单元格数据中的'C+数字'后面的字符剪切到I列,并将'C+数字'保留在H列。

示例: 假设H列中有以下数据:

| H列 | I列 | |---|---| | C123abc | | | C456def | | | C789ghi | |

运行代码后,结果如下:

| H列 | I列 | |---|---| | C123 | abc | | C456 | def | | C789 | ghi |

注意:

  • 本代码仅适用于H列中以'C'开头且后面跟着数字的单元格。
  • 如果H列中存在其他格式的数据,需要进行调整代码逻辑。
  • 代码仅用于示例,实际使用时请根据实际情况进行调整。
Excel VBA: 将H列数据中'C+数字'后面的字符剪切到I列

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

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