0

我正在尝试获取多个括号和逗号分隔它们之间的所有内容。所以例如

A1 包含

thisfile.jpg (/path/to/file.jpg), thisfile2.jpg (/path/to/file2.jpg)

B1 应该看​​起来像

/path/to/file.jpg, /path/to/file2.jpg

如果它只是一个条目,我可以得到我需要的东西:

MID(A1,FIND("(",A1)+1,FIND(")",A1)-FIND("(",A1)-1)

但这只会返回第一个,我需要为每个括号。每行中括号的数量会有所不同。

4

1 回答 1

1

我相信只有公式有更好的解决方案。然而,我无法帮助你。但是下面的UDF肯定也是一个可行的解决方案。只需将此代码复制到一个空模块中:

Option Explicit

Public Function GetPaths(strTMP As String)

Dim i As Long
Dim varArray As Variant

varArray = Split(strTMP, "(")
For i = LBound(varArray) To UBound(varArray)
    If InStr(1, varArray(i), ")") > 0 Then
        GetPaths = GetPaths & ", " & Mid(varArray(i), 1, InStr(1, varArray(i), ")") - 1)
    End If
Next i
GetPaths = Mid(GetPaths, 3)

End Function

之后,您可以在列中使用此公式,B如下所示:=GetPaths(A1)

于 2016-06-16T01:32:43.157 回答