投稿日 | : 2004/05/31(Mon) 22:59 |
投稿者 | : YADORI |
Eメール | : |
URL | : |
タイトル | : 英数字以外の削除の仕方 |
いつも利用させて頂いてお入ります。
strOneLineDatに英数字、漢字、記号などが入り乱れて入力されます。
そのデータを英数字のみの状態のデータとしたい時に私は下記の様に記述したのですが
データが多くなると処理速度がかなり低下します。
Dim strOneLineDat As String
Dim strTemp As String
Dim intLoop As Integer
Dim intAsc As Integer
'
strOneLineDat = "aAcd-0324-PあOI*POいL\AA"
'
strTemp = ""
For intLoop = 1 To Len(strOneLineDat)
intAsc = Asc(Mid$(strOneLineDat, intLoop, 1))
If (intAsc >= 97 And intAsc <= 122) _
Or (intAsc >= 65 And intAsc <= 90) _
Or (intAsc >= 48 And intAsc <= 57) Then
strTemp = strTemp + Mid$(strOneLineDat, intLoop, 1)
End If
Next
strOneLineDat = strTemp
MsgBox strOneLineDat '結果------------> aAcd0324POIPOLAA
速度を上げるためにもっと簡略した方法など有ればご教授頂きたくお願い致します。