0

私はExcelリストをスクラブするマクロを書いています。名前のリストを取得して名を削除する必要があるため、「JohnSmith」は「Smith」になります。スペースの後、スペースの前のテキストを削除する方法は知っていますが、もっと注意が必要です。

4

2 に答える 2

1

使用するRIGHT("John Smith",LEN("John Smith")-FIND(" ","John Smith"))

于 2012-06-07T14:21:28.617 に答える
0

これは、「rng_Names」と呼ばれる名前付き範囲のすべてのセルをループし、最後の単語を除くすべてを削除するサブです。

Sub removeAllButLastWord()
    For Each cl In Range("rng_Names")
        cl.Value = Right(cl.Value, Len(cl.Value) - InStrRev(cl.Value, " "))
    Next cl
End Sub

アップデート

次のサブは、最初の単語を削除するだけです。

Sub removeFirstWord()
    For Each cl In Range("rng_Names")
        cl.Value = Right(cl.Value, Len(cl.Value) - InStr(cl.Value, " "))
    Next cl
End Sub

2番目を更新します

次のサブは、最初の単語と、存在する場合は文字列「jr」だけを削除します

Sub removeFirstWordAndJR()
    For Each cl In Range("rng_Names")
        cl.Value = Replace(Right(cl.Value, Len(cl.Value) - InStr(cl.Value, " ")), " Jr", "", 1, -1, vbTextCompare)
    Next cl
End Sub
于 2012-06-07T14:25:12.667 に答える