脚本删除字母 [英] Script to remove letters
本文介绍了脚本删除字母的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我需要一个Excel VB脚本来删除单元格中的所有字母Az和()。
我想保留所有数字和句点(。)。 p>
例如SDF dsfsd dfS SD(dfd)))sdf 2.1 mg uf g将成为2.1
这是什么我有,但它不工作:
函数strClean(strtoclean)
Dim objRegExp,outputStr
设置objRegExp = New Regexp
objRegExp.IgnoreCase = True
objRegExp.Global = True
objRegExp.Pattern =(([0-9])。
outputStr = objRegExp。替换(strtoclean, - )
objRegExp.Pattern =\- +
outputStr = objRegExp.Replace(outputStr, - )
strClean = outputStr
结束功能
解决方案
尝试这个:
Sub Remove_Alpha(rCll As Range)
Dim sCll As String,i As Integer
sCll = rCll.Value2
sCll = WorksheetFunction.Clean(sCll)
对于i = 1至255
选择案例i
案例46,48到57
案例Else
sCll = WorksheetFunction.Substitute(sCll,Chr(i),)
结束选择
下一个
rCll.Value = sCll
End Sub
I need an Excel VB script to remove all letter a-z A-z and () from cell.
I want to keep all numbers and periods (.).
For example SDF dsfsd dfS SD ( dfd ))) sdf 2.1 mg uf g will become 2.1
This is what I have but it is not working:
Function strClean(strtoclean)
Dim objRegExp, outputStr
Set objRegExp = New Regexp
objRegExp.IgnoreCase = True
objRegExp.Global = True
objRegExp.Pattern = "(([0-9]).)"
outputStr = objRegExp.Replace(strtoclean, "-")
objRegExp.Pattern = "\-+"
outputStr = objRegExp.Replace(outputStr, "-")
strClean = outputStr
End Function
解决方案
Try this:
Sub Remove_Alpha(rCll As Range)
Dim sCll As String, i As Integer
sCll = rCll.Value2
sCll = WorksheetFunction.Clean(sCll)
For i = 1 To 255
Select Case i
Case 46, 48 To 57
Case Else
sCll = WorksheetFunction.Substitute(sCll, Chr(i), "")
End Select
Next
rCll.Value = sCll
End Sub
这篇关于脚本删除字母的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文