请问Excel如何用函数提取数据?

发布网友 发布时间:2022-02-27 13:00

我来回答

1个回答

热心网友 时间:2022-02-27 14:29

今天小编就以提取文字与数字混杂在一起的数据中,利用函数只提取数字的方法讲解excel使用教程,大家感觉感觉学习一下吧!

  1、汉字在前,数字在后面的情形。可以用MID,min,find三个函数来实现提取里面的数字。如图:在B2输入“=MID(A1,MIN(FIND({0,1,2,3,4,5,6,7,8,9},A1&“01234567”)),20)”

  Excel怎么只提取表格中的数字

  2、把单元格里面所有的数字都提出来。可以使用宏。先打开VBA编辑器。工具——宏——visualbasic编辑器

  Excel怎么只提取表格中的数字

  3、在编辑器里点击插入——模块。在模块那里输入如下代码:

  Functionzzsz(xStrAsString)AsStringDimiAsIntegerFori=1ToLen(xStr)IfIsNumeric(Mid(xStr,i,1))Thenzzsz=zzsz&Mid(xStr,i,1)NextEndFunction

  4、回到工作表,在B2单元格那里输入“=zzsz(A2)”。就可以用VBA把A2单元格里所有的数字都提取出来了,如图所示。

  Excel怎么只提取表格中的数字

  5、指定从第几个数组提取开始。也就是说在不连续的那些数字中,从第几次出现的数组开始提取。同样在模块那里输入如下代码:

  FunctionGetNums(rCellAsRange,numAsInteger)AsStringDimArr1()AsString,Arr2()AsStringDimchrAsString,StrAsStringDimiAsInteger,jAsIntegerOnErrorGoToline1

  Str=rCell.TextFori=1ToLen(Str)chr=Mid(Str,i,1)If(Asc(chr)《48OrAsc(chr)》57)ThenStr=Replace(Str,chr,“”)EndIfNext

  Arr1=Split(Trim(Str))ReDimArr2(UBound(Arr1))Fori=0ToUBound(Arr1)IfArr1(i)《》“”ThenArr2(j)=Arr1(i)j=j+1EndIfNext

  GetNums=IIf(num《=j,Arr2(num-1),“”)line1:EndFunction

  Excel怎么只提取表格中的数字

  6、在回到单元格那里输入“=Getnums(A3,2)”就可以提取第几次出现的数组了,如图所示。

  Excel怎么只提取表格中的数字

  以上是我平时和大家学习得的经验和大家分享,希望对大家有帮助。如果对你有用处的话,请投我一票以示鼓励。追问这个太高深了 没有看懂

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com