Excel:我将粘贴列表200链接从网站复制到Excel,我想从链接中提取文本

时间:2010-09-20 06:35:58

标签: excel

链接在Excel中显示为带有蓝线的超链接,我想从链接中提取文本,例如 网址http:\ sea.craigslist.com在excel中显示为“西雅图”。我想从链接中提取文本“sea”并粘贴到下一列。

3 个答案:

答案 0 :(得分:0)

这应该有效:

=LEFT(RIGHT(C3,LEN(C3)-7),FIND(".",RIGHT(C3,LEN(C3)-7))-1)

将此代码粘贴到您想要“海”的单元格中。将上述代码中的C3替换为具有http://sea.something.com之类链接的单元格。它会在结果单元格中显示海洋。

注意:仅当您的链接在链接开头有“http://”时才会有效。

答案 1 :(得分:0)

为此,您可以在excel中获取VBA编程的帮助。 你可以得到很多关于它的pdf和tuts。

http://www.adnug.com/book_reviews/Programming%20Excel%20with%20VBA%20_3_.pdf

答案 2 :(得分:0)

您可以创建用户定义的函数(UDF)来提取数据。

  • 打开您的工作簿。
  • 按Alt + F11
  • 打开VBA编辑器
  • 使用菜单插入 - >插入新模块模块
  • 复制并粘贴下面列出的功能代码
  • 使用菜单文件 - >关闭VBA编辑器。关闭并返回Microsoft Excel
  • 假设第一个链接在单元格A1中,在公式中的单元格B1类型= GetPart(A1)
  • 根据需要复制公式

公式应该返回单元格B1中的值“sea”

Function GetPart(cell As Range) As String

    Dim iStart As Integer
    Dim iEnd As Integer
    Dim iLen As Integer

        If (cell.Range("A1").Hyperlinks.Count <> 1) Then
            GetPart = ""
        Else
            GetPart = cell.Range("A1").Hyperlinks(1).Address
            iStart = InStr(1, GetPart, "//") + 2
            iEnd = InStr(1, GetPart, ".")
            iLen = iEnd - iStart
            GetPart = Mid(GetPart, iStart, iLen)
        End If

End Function