返回目录:excel表格制作
excel单元格中可以通过right函数、left函数、len函数以及lenb函数来进行删除文字百保留数字。
excel单元格删除文字保留数字:
1、打开excel表格。
2、在B列中准备输入函度数,点击B1中,在红色函数输入区域输入“=”。
3、在红色区域的“=”后面输入函数“LEFT(A1,2*LEN(A1)-LENB(A1)-1)”,left函数为基于所指定的字符知数返回文本字符串中的第一个或前几个字符。 LEFT(text,num_chars) ,Text 是包含要提取字符的文本字符串。 Num_chars 指定要由 LEFT 所提取的字符数。道
LEN 函数返回文本字符串中的字符数。 LEN(text) ,Text 是要查找其长度的文本。 LENB函数返回文本字符串中用于代表字专符的字节数。此函数用于双字节字符。 LENB(text) Text 要查找其长度的文本。
4、按下回车键,函数自动处理结果,将前面“数字”的字符留下来,将后面“字”的字符去掉。
5、在B1处进行下拉对所有行进行计算。
6、下拉完成属后,对所有的行计算完毕。
7、按下顶部“保存”按键进行保存。
excel能判断是否是中文,但是比较麻烦,难以取值。
公式是"=IF(LEN(A1)=LENB(A1),"不含汉字","有汉字")",判断的是zhidao整个字符串是否含有中文。
而要达到题主的目的,可以这样实现,我们内假设你的每一个单元格都是将中文和英文以中文冒号":容"分开,那么公式就是:
=RIGHT(A1,LEN(A1)-SEARCH(":",A1,1))
相当于判断":"的位置,并取":"右边的所有文字。
我已经把所有的演示步骤录下来了,请查看下面动画:
http://hiphotos.baidu.com/dhxmr1110/pic/item/35a0375a59b9e3b3800a183a.jpg
宏最方便了。
打开excel,alt+F11,右侧e69da5e6ba907a686964616f331你的文件VBAProject(***.xls),右击“插入--模块--双击模块,把下面代码粘贴进去,保存退出。重新打开excel,启用宏,就可以用了,具体A2=取值(取值(A1,"-zm"),"-sz")就可以得到了。
Function 取值(rng, types As String) As String
Dim obj As Object
Set obj = CreateObject("VBSCRIPT.REGEXP")
With obj
.Global = True
If types = "-hz" Then
.Pattern = "[一-﨩]"
ElseIf types = "-zm" Then
.Pattern = "[a-zA-Z]"
ElseIf types = "-sz" Then
.Pattern = "\d"
ElseIf types = "+hz" Then
.Pattern = "^[一-﨩]"
ElseIf types = "+zm" Then
.Pattern = "[^a-zA-Z]"
ElseIf types = "+sz" Then
.Pattern = "[^0-9]"
End If
取值 = .Replace(rng, "")
End With
End Function
'使用说明:
'去汉字:=取值(A2,"-hz")
'取汉字:=取值(A2,"+hz")
'去字母:=取值(A2,"-zm")
'取字母:=取值(A2,"+zm")
'去数字:=取值(A2,"-sz")
'取数字:=取值(A2,"+sz")
输入公式:
=REPLACE(A1,1,5,"")
或者:
=REPLACE(A1,1,FIND(":",A1),"")
即可