如何通过设置Excel行距提升工作表可读性和美观度
1563
2022-12-11
Excel中利用函数提取数字的操作方法
许多熟悉Excel进行数据处理的网友都会深刻的感受到这款软件功能的强大,尤其是如果会使用函数的话,那不仅仅是可以让事情事半功倍,还会让同事都觉得自己真的是一个Excel高手。提取文字与数字混杂在一起的数据中,利用函数只提取数字的方法,今天,小编就教大家在Excel中利用函数提取数字的操作方法。
Excel中利用函数提取数字的操作步骤如下:
汉字在前,数字在后面的情形。可以用MID,min, find三个函数来实现提取里面的数字。如图:在B2输入“=MID(A1,MIN(FIND({0,1,2,3,4,5,6,7,8,9},A1&“0123456789”)),20)”。
把单元格里面所有的数字都提出来。可以使用宏。先打开VBA编辑器。工具——宏——visual basic 编辑器。
Function zzsz(xStr As String) As StringDim i As IntegerFor i = 1 To Len(xStr)If IsNumeric(Mid(xStr, i, 1)) Then zzsz = zzsz & Mid(xStr, i, 1)NextEnd Function
回到工作表,在B2单元格那里输入“=zzsz(A2)”。就可以用VBA把A2单元格里所有的数字都提取出来了,如图所示。
指定从第几个数组提取开始。也就是说在不连续的那些数字中,从第几次出现的数组开始提取。同样在模块那里输入如下代码:
Function GetNums(rCell As Range, num As Integer) As StringDim Arr1() As String, Arr2() As StringDim chr As String, Str As StringDim i As Integer, j As IntegerOn Error GoTo line1
Str = rCell.TextFor i = 1 To Len(Str)chr = Mid(Str, i, 1)If (Asc(chr) 《 48 Or Asc(chr) 》 57) ThenStr = Replace(Str, chr, “ ”)End IfNext
Arr1 = Split(Trim(Str))ReDim Arr2(UBound(Arr1))For i = 0 To UBound(Arr1)If Arr1(i) 《》 “” ThenArr2(j) = Arr1(i)j = j + 1End IfNext
GetNums = IIf(num 《= j, Arr2(num – 1), “”)line1:End Function
在回到单元格那里输入“=Getnums(A3,2)”就可以提取第几次出现的数组了,如图所示。
Excel中利用函数提取数字的操作方法
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。