找出excel表格中的某一列中的手机号码(或者连续11位数字),并复制到后面的一列中去

现有一个excel表格中,其中一列的每个单元格都有大量文字包括一些手机号码,我现在想要找到这些手机号码(或者只要连续的11位数字即可)并复制到后面生成新的一列中,函数怎样... 现有一个excel表格中,其中一列的每个单元格都有大量文字包括一些手机号码,我现在想要找到这些手机号码(或者只要连续的11位数字即可)并复制到后面生成新的一列中,函数怎样写?写完之后怎样运行?谢谢 展开
 我来答
ricky43
2013-03-04 · TA获得超过2354个赞
知道大有可为答主
回答量:1687
采纳率:66%
帮助的人:679万
展开全部

单元格A1中有如下内容:

 

 

 

提取Excel单元格中连续的数字的函数公式是:

=LOOKUP(9E+307,--MID(A1,MIN(FIND({1,2,3,4,5,6,7,8,9,0},A1&1234567890)),ROW($1:$8)))

 

 

 

解释一下这个公式

 

 

 

FIND函数——查询文本所在位置

FIND(find_text,within_text,[start_num])

FIND(需查找的文本,包含查找文本的单元格,开始查找单元格的字符位置(可选))

此处FIND函数是搜索{1,2,3,4,5,6,7,8,9,0}数字在“A1&1234567890”中所在的位置;

A1&1234567890的目的是在用FIND函数查询时,不出现错误值,使之后的MIN函数可以正常运行。

即FIND({1,2,3,4,5,6,7,8,9,0},“小王联系电话58670098负责财务1234567890”)

选取划黑后按F9,得出的位置为:{19,20,21,22,7,9,10,8,13,11}

 

 

 

MIN函数——返回列表中的最小值

MIN(number1,number2,……)

MIN(数字1,数字2,……)

将FIND所得结果{19,20,21,22,7,9,10,8,13,11}带入MIN函数,最小值所得为7,正是第一个数值出现的位置;

也正是之前FIND函数中使用A1&1234567890的原因。

 

 

 

MID函数——返回文本字符串从指定位置开始特定数目的字符,即提取某段字符。

MID(text,start_num,num_chars)

MID(被提取的文本或单元格,开始提取的字符位置,提取的字符个数)

将上述MIN函数所得带入MID(A1,7,ROW($1:$8);

ROW($1:$8)使用row函数不是用来计算行,而是借用其作为常量。当然1:8是可以修改的,只要大于数值个数就不影响结果。

 

 

 

--MID(……)中“--”的作用是将MID得出的结果变为数值,使其可以被LOOKUP函数查询到。

MID(……)选取划黑后按F9{"5";"58";"586";"5867";"58670";"586700";"5867009";"58670098"}

--MID(……)选取划黑后按F9{5;58;586;5867;58670;586700;5867009;58670098}

 

 

 

LOOKUP函数——从返回某个查询的值(数组形式)

LOOKUP(lookup_value,array)

LOOKUP(在数组中查找的值,数组范围区域)

 

很重要的一点:

如果 LOOKUP 找不到 lookup_value 的值,它会使用数组中小于或等于 lookup_value 的最大值。

LOOKUP(9E+307,……)其中9E+307指的是一个不会出现的超大值,9后面有307个0, 9E+307又可以写成9*10^307;那么此处搜索这个超大值,肯定无法找到,因此返回的内容将是小于或等于{5;58;586;5867;58670;586700;5867009;58670098}的最大值,即58670098。

 

 

jjchangyuan
2013-03-04 · TA获得超过1.1万个赞
知道大有可为答主
回答量:4278
采纳率:90%
帮助的人:1060万
展开全部
给你一个通用程序
假定原数据在A列
B1
=-LOOKUP(,-MID(A1,ROW(INDIRECT("$1:$"&LENB(A1))),11)) 按ctrl+shift+enter结束公式输入,下拉填充
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
柔软的Bp
科技发烧友

2013-03-04 · 智能家居/数码/手机/智能家电产品都懂点
知道大有可为答主
回答量:3万
采纳率:67%
帮助的人:8744万
展开全部

要是单元格里的文字刚好也是11位?

应该是这样的吧?

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
nanlaihe
2013-03-04 · TA获得超过7986个赞
知道大有可为答主
回答量:3747
采纳率:0%
帮助的人:3282万
展开全部
如果内容中除了汉子字母外 只有连续的11位数字 可以用一下的公式 手机号都是1开头的
假如数据在a1
=MID(A1,FIND("1",A1),11)

或者
=MIDB(A1,SEARCHB("?",A1),11)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我的王是金闪闪4o
2013-03-04 · TA获得超过6698个赞
知道大有可为答主
回答量:7194
采纳率:42%
帮助的人:3272万
展开全部
假设数据在A列。
B1输入公式
=if(len(a1)=11,a1,"")
下拉复制公式
追问
我的数据在j列
应该在k1输入公式如下=if(len(j1)=j1,j1,"")吗?
如果是这样,没反应
追答
=if(len(j1)=11,,j1,"")
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(7)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式