VBA从分割string返回值

我试图返回并定义一个定义的string的拆分值。 (在vba中)单元格的分隔符是“@”。

这里是一个例子:“Element1 @ Element2 @ Element3 @ Element4”

我只用“Element1 @ Element2”就可以做到这一点,使用下面的代码:

Sheet1.Range("B1").Value = Linerange.Value Dim Element1 As String Dim Element2 As String Element1 = Left(Linerange.Value, InStr(1, Linerange.Value, "@") - 2) Element2 = Right(Linerange.Value, Len(Linerange.Value) - InStr(1, Linerange.Value, "@") - 1) 

任何想法如何解决这个问题,并为Element3和Element4定义值?

谢谢!

尝试在您的值上使用Splitfunction :

 Dim elements, ele '' Declared implicitly as Variant type elements = Split(Linerange.Value, "@") For Each ele in elements Debug.Print ele Next 
 Dim vSplit As Variant vSplit=Split(Linerange.Value,"@") 

然后你有一个vSplit()的数组