我在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”时才起作用。如果不是,则抛出错误。这是我第一个问题How to delete some text in-between a string in a cell in excel的链接。如果有人可以帮助解决此问题,那就太好了。非常感谢。
答案 0 :(得分:0)
查看是否可行:
添加了一个If条件来检查Main。
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
您应该尝试使用该代码,以使其变得有用。