|
つんさん、フォローをありがとう♪
さて例示のような文字列であれば、先のマクロを
Sub Only_AtoZ()
Dim RExp As Object, Match As Object, Matches As Object
Dim C As Range
Dim Str As String
Set RExp = CreateObject("VBScript.RegExp")
With RExp
.Pattern = "[a-z]|\s"
.IgnoreCase = True
.Global = True
For Each C In Selection
If .Test(C.Value) Then
Str = ""
Set Matches = .Execute(C.Value)
For Each Match In Matches
Str = Str & Match.Value
Next
C.Offset(, 1).Value = Trim(Str)
Set Matches = Nothing
End If
Next
End With
Set RExp = Nothing
End Sub
と、修正すれば良いでしょう。ただし
123abc def 10.5 ghi 547
というような文字列では
abc def ghi
という結果になります。これは分割の基準が難しいので、今のところうまいパターン
を見出せません。
|
|