我在excel中有一些公司地址 - 这是其中一个单元格的样子。任何单元格中的公司地址数量各不相同。
abc
United Kingdom
Main Phone: 1234567
Main Fax: 63273818
Other Phone: 53177188
dfr
China
rtg
United States
Main Phone: 2434571
Main Fax: 3278188
Other Phone: 31771988
What I want as a outcome is
abc
United Kingdom
dfr
China
rtg
United States
我以前也问过这个问题。有人已经足够好地分享了这段代码
Function remo(txt As String) As String
txt1 = Split(txt, Chr(10) & Chr(10))
For i = LBound(txt1) To UBound(txt1)
remo = remo & Left(txt1(i), InStr(1, txt1(i), "Main") - 1) & Chr(10) & Chr(10)
Debug.Print txt2
Next
End Function
但是,这仅在每个地址(在单元格内(中都有"Main"时才有效。如果没有,则抛出错误。这是我的第一个问题的链接 如何在excel单元格中的字符串之间删除一些文本 .如果有人可以帮助解决这个问题,那就太好了。非常感谢。
看看这是否有效:
添加了 If 条件以检查主。
Function remo(txt As String) As String
txt1 = Split(txt, Chr(10) & Chr(10))
For i = LBound(txt1) To UBound(txt1)
If InStr(1, txt1(i), "Main") > 1 Then
remo = remo & Left(txt1(i), InStr(1, txt1(i), "Main") - 1) & Chr(10) & Chr(10)
Else: remo = remo & txt1(i) & Chr(10) & Chr(10)
End If
Next
End Function
你应该尝试使用代码,让它有用。