2013-11-14 68 views
6

我想从Excel中的一串文本中拉出一个数字。 该字符串是字母,数字和一些字符的混合。从一个文本字符串中提取数字 - Excel

实例数据串 -

Web Address 
/products_list.php?retailer=8&cat=43 
/products_list.php?retailer=22&cat=43 
/products_list.php?retailer=8&cat=1011 
/products_list.php?retailer=81&cat=1023 
/products_list.php?retailer=147&cat=1224 
/products_list.php?retailer=8&cat=1 
/products_list.php?retailer=147&cat=4 
/products_list.php?retailer=147&cat=401 

我想要实现的是

example excel

我得到尽可能从文本拉出所有的数字,但真的不能工作了解如何获得中间的数字或最后的数字。

我试图代码来解决这个问题是: -

=SUM(MID(0&A3,LARGE(ISNUMBER(--MID(A3,ROW(INDIRECT("1:"&LEN(A3))),1))*ROW(INDIRECT("1:"&LEN(A3))),ROW(INDIRECT("1:"&LEN(A3))))+1,1)*10^ROW(INDIRECT("1:"&LEN(A3)))/10) 

SCE为数组公式。

如果可能的话,我宁愿一个宏的公式。

OH的情况下,它使得使用Excel 2010中

回答

5

零售商(B2):

=LEFT(RIGHT(A2,LEN(A2)-FIND("=",A2)),FIND("&",RIGHT(A2,LEN(A2)-FIND("=",A2)))-1) 

目录号(C2):

=RIGHT(A2,LEN(A2)-(FIND("cat=",A2)+3)) 

将公式向下拖动并且

enter image description here

2

这看起来真的很丑(我不是专家的Excel)的差异IM,但它与您提供的工作。

公式零售商:

=MID(A2,FIND("retailer=",A2)+9,FIND("&",A2)-(FIND("retailer=",A2)+9)) 

公式猫数:

=MID(A2,FIND("cat=",A2)+4,100)