在 Excel 中分隔姓名

在 Excel 中分隔姓名

我有 60K 个名字的列表。我需要根据它们的长度将它们分成不同的工作表。

我一直使用正常方式使用 len() 公式进行操作,过滤它们并将它们复制粘贴到单独的表中。

是否有任何 VBA 代码可以用来执行此操作?

示例列表

Name     Length
EMMALINE    8
EMMIE       5
EMMER       5
AMMIE       5
EMMY        4
AMMA        4
EMMELINE    8
EMMALEE     7
EMMALOU     7

答案1

这只是一种示例方法。首先按如下方式命名目标表:

在此处输入图片描述

然后运行此宏:

Sub croupier()
    Dim N As Long, i As Long, s As String, M As Long

    Sheets("Sheet1").Select
    N = Cells(Rows.Count, 1).End(xlUp).Row
    For i = 2 To N
        v = Cells(i, 1).Value
        s = "s" & Len(v)
        With Sheets(s)
            M = .Cells(Rows.Count, 1).End(xlUp).Row + 1
            .Cells(M, 1) = v
        End With
    Next i
End Sub

相关内容