2013-07-04 33 views
1

我想僅使用Excel公式(無VB腳本)解決此問題。這是A列,每一行是另一種細胞(我取代在URL中的冒號明星,因爲我不能張貼):查找單元格中的不同字符串

dkfl KDF升sfljdsgfs HTTP // * www.ebay.com/haha .jpg「sfkld fk
dl san djfms djd http * // www.amazon.com/ka.jpg」js ka jfo jdjs http * // www.google.com/lilo.jpd fd sfdg
sdf sdf jpg https * // www.microsoft.com/img.jpg」 KKL LLA

的目標是提取在每個小區所有的URL。如果可能的話,還用逗號隔開(但只是讓他們將是一件好事,我可以稍後在結果中添加逗號)

我在單元B1用(以及然後到B2和B3)=LEFT(A1,FIND("jpg"" ",A1)+2)這給了我:

dkfl kdf l sfljdsgfs http*//www.ebay.com/haha.jpg 
dl san djfms djd http*//www.amazon.com/ka.jpg 
sdf sdf jpg https*//www.microsoft.com/img.jpg 

和在小區C1我還用於在列C =RIGHT(B1,LEN(B1)-FIND(" http:",B1))

結果結果:

HTTP // * www.ebay.com/haha.jpg
HTTP // * www.amazon.com/ka.jpg
HTTPS * // www.mi crosoft.com/img.jpg

除了單元格A2有兩個不同的URL,我只能得到一個。什麼是更好的方法來提取所有的URL?只有Excel公式可能嗎?

+1

你有試過我的回答嗎? ..或者任何評論? – matzone

回答

0

至少你得把這個公式..

= MID(A1,INSTR(A1,"http"),INSTR(A1,"jpg")-INSTR(A1,"http")+2) 
+0

INSTR僅適用於VBA(OP僅提及*僅使用Excel公式*)。我認爲一個近似的等價物可能是'= MID(A1,FIND(「http」,A1),FIND(「jpg」,A1)-FIND(「http」,A1)+3)'但這仍然有問題A3中的第一個jpg,A2中沒有找到第二個實例。 – pnuts

0

我不是完全清楚你的要求(超過2在一個單元/ .jpd或.jpg /更好的方法是主觀的),但式可能適合如下:

= MID(A1,FIND( 「HTTP」,A1),LEN(A1) - 查找( 「HTTP」,A1)+1)& 「//」 & C1 &「 /「& LEFT(D1,FIND(」。jpg「,D1)+3)& IF(ISBLANK(F1),」「,」,,「& MID(D1,FIND(「http」,D1),LEN(D1)-FIND(「http」,D1)+1)&「//」& F1 &「/」& LEFT(G1,FIND JPG」,G1)3))

如果columnA首先分離成列(數據>數據工具>文本到列,界定,其他:/完成)。

相關問題