使用 Excel VBA 提取包含 'C+数字' 字符串的单元格内容

本 VBA 代码用于检查 Excel 工作表 H 列的单元格内容,提取并保留包含 'C+数字' 字符串的单元格内容,其他内容将被清空。

Sub CheckData()
    Dim lastRow As Long
    lastRow = ActiveSheet.Cells(Rows.Count, "H").End(xlUp).Row '获取最后一行的行号
    Dim i As Long
    For i = 1 To lastRow
        Dim cellValue As String
        cellValue = ActiveSheet.Cells(i, "H").Value '获取单元格的值
        Dim regex As Object
        Set regex = CreateObject("VBScript.RegExp") '创建正则表达式对象
        regex.Pattern = "C\d+" '设置正则表达式的模式
        Dim match As Object
        Set match = regex.Execute(cellValue) '执行正则表达式匹配
        Dim result As String
        If match.Count > 0 Then '如果匹配到了
            result = match(0) '取第一个匹配结果
        Else '如果没有匹配到
            result = "" '设置结果为空字符串
        End If
        ActiveSheet.Cells(i, "H").Value = result '将结果写回单元格
    Next i
End Sub

代码说明

  • 代码使用正则表达式匹配 'C+数字' 的模式。
  • 代码遍历 H 列的每个单元格,检查其内容是否符合模式。
  • 如果符合模式,则将匹配到的第一个结果写入单元格,否则清空单元格内容。

应用场景

  • 从包含各种字符串的单元格中提取特定格式的字符串。
  • 清理包含不符合特定格式的字符串的单元格内容。

注意

  • 代码只保留第一个匹配到的结果。
  • 如果单元格内容中有多个符合模式的字符串,则只保留第一个。
  • 代码会覆盖单元格中原有的内容。
  • 请在使用代码之前备份您的工作表,以防意外数据丢失。

希望此代码能够帮助您提取包含 'C+数字' 字符串的单元格内容!如有任何问题,请随时留言。

Excel VBA:提取包含 'C+数字' 字符串的单元格内容

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

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