在excel中解析url字符串

时间:2016-11-11 22:42:45

标签: excel formula

我想从Excel中的url字符串中解析一个数字,然后使用公式将其粘贴到另一个单元格中。例如,我有https://system.google.com/childrecords.nl?id=668&t=CustomField&rectype=-704&weakdeps=T。我想用一个公式来推出“668'并将其放在相邻的单元格中。关于如何解决这个问题的任何想法?

2 个答案:

答案 0 :(得分:1)

如果你总是想要第一组数字,并且两边总是有一个=标志和一个&,那么这将有效:

=MID(A1,SEARCH("=",A1)+1,SEARCH("&",A1)-SEARCH("=",A1)-1)

否则,这是一个可行的UDF。您可以将它粘贴到Visual Basic编辑器Alt+F11中的常规模块中,并像任何其他公式一样使用它:

Option Explicit

Public Function FindFirstSetOfNumbers(MyRange As Range) As String

Dim NumCounter As Integer
Dim Start As Integer

Start = Application.Evaluate("=MIN(FIND({0,1,2,3,4,5,6,7,8,9}," & MyRange.Address & "&""0123456789""))")

For NumCounter = Start To Len(MyRange)
    If IsNumeric(Mid(MyRange, NumCounter, 1)) Then
        FindFirstSetOfNumbers = FindFirstSetOfNumbers & Mid(MyRange, NumCounter, 1)
    Else
        Exit For
    End If
Next NumCounter

End Function

只需在任意单元格中输入=FindFirstSetOfNumbers(YourRange),然后按enter=VALUE(FindFirstSetOfNumbers(YourRange))即可将其转换为数字数据类型。

答案 1 :(得分:0)

=LEFT(MID(A1,SEARCH("id=",A1)+3,15),SEARCH("&",MID(A1,SEARCH("id=",A1)+3,15))-1)