我有一份姓名列表。
我需要将包含字符的姓名分开g,j,p,q,y
。
姓名可以以G,J,P,Q,Y
字符开头,即以字符为首字母。但字符 g、j、p、q、y 不应出现在姓名的任何其他部分。
请帮我。
例如:需要过滤掉
Cathy、Deejay、Diego、Gray 等 名字
例外:
Gina、Gracie、Jane、Priscilla 等
答案1
我不知道你如何用工作表公式做到这一点,但因为你没有答案,这个 VBa 可以做到这一点
Option Explicit
Sub WalkThePlank()
Dim column As String
column = "A" 'Update this to ye starting col
Dim row As Integer
row = 1 'Aye cap'an, this be your first row
Dim badLetters As String
badLetters = "gjpqy" 'piracy! Enter the scurvy seadog letters you don't want as a complete word
'don't touch below or be fed to the sharks
Do While Range(column & row).Value <> ""
Dim name As String
name = Range(column & row).Value
Dim i As Integer
For i = 0 To Len(badLetters)
Dim c As String
c = Mid(badLetters, i + 1, 1)
If InStr(1, name, c) > 0 And c <> "" Then
Range(column & row).Value = ""
Exit For
End If
Next i
row = row + 1
Loop
End Sub
请记住,没有撤消功能,因此请先保存一份副本!
前
后