我有一個 Excel 工作簿,在 A 列中每個單元格包含以下的所有 URL網站(這意味著一個單元格中有數百個 URL)。
在單一單元格內的所有 URL 中,我只想提取包含該單字的 URL接觸
例如:
單元格 A1:http://examplesite.com/index.html; http://examplesite.com/login.php; http://examplesite.com/contact.html; http://examplesite.com/about.html
單元格 A2:http://hello.publish.com/alumni; http://hello.publish.com/contact-us; http://hello.publish.com/sitemap; http://hellopublish.com/projects
等等
我希望在 B 列上輸出此輸出
單元 B1: http://examplesite.com/contact.html
單元格 B2: http://hello.publish.com/contact-us
答案1
嘗試以下操作U塞爾D精緻的F塗油(UDF):
Public Function FindContact(inpt As String) As String
ary = Split(inpt, "; ")
For Each a In ary
If InStr(1, a, "contact") > 0 Then
FindContact = a
Exit Function
End If
Next a
FindContact = ""
End Function
使用者定義函數 (UDF) 非常易於安裝和使用:
- ALT-F11 調出 VBE 窗口
- ALT-I ALT-M 開啟新模組
- 將內容貼進去並關閉 VBE 窗口
如果儲存工作簿,UDF 將隨之儲存。如果您使用的是 2003 年以後的 Excel 版本,則必須將檔案另存為 .xlsm 而不是 .xlsx
若要刪除 UDF:
- 如上所示調出 VBE 窗口
- 清除程式碼
- 關閉VBE視窗
若要使用 Excel 中的 UDF:
=查找聯絡人(A1)
要了解有關巨集的更多信息,請參閱:
http://www.mvps.org/dmcritchie/excel/getstarted.htm
和
http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx
有關 UDF 的詳細信息,請參閱:
http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx
必須啟用巨集才能使其工作!
答案2
由於您的所有資料都是垂直向下的,因此您的命令就是命令VLookup
。首先在 B 列中為每個 URL 設定一個標識符,從 1 開始一直到結束。透過將角落上的黑點一直向下拖曳直到到達結束 URL 來完成此操作。例:VLookup("contact",$A1:$B13,2,TRUE)
。