連続していない列で次のコードを実行する必要があります。別のコードに対してこれを行う方法については、ここにコードが投稿されています。 Excel の VBA コードにループを追加する
私は同じことをする必要があります:
Sub CleanAll()
Dim rng As Range
For Each rng In Sheets("Sheet1").Range("D2:D100").Cells 'adjust sheetname and range accordingly
rng.Value = TextOnly(rng.Value)
Next
End Sub
私の失敗した努力
Sub CleanAll(sColRange As String)
Dim rng As Range
For Each rng In Sheets("Sheet1").Range(sColRange).Cells 'adjust sheetname and range accordingly
rng.Value = TextOnly(rng.Value)
Next
End Sub
次のように使用します。
Call CleanAll("B2")
Call CleanAll("H2")
ありがとう
編集
上記は以下を呼び出します
Function TextOnly(strSource As String) As String
Dim i As Integer
Dim strResult As String
For i = 1 To Len(strSource)
Select Case Asc(Mid(strSource, i, 1))
Case 48 To 57, 65 To 90, 97 To 122: 'include 32 if you want to include space
strResult = strResult & Mid(strSource, i, 1)
End Select
Next
AlphaNumericOnly = strResult
End Function