Excel:获取字符之间的值,但是如果空白复制单元格?

我使用下面的公式来获得第一个和第二个“|”之间的值。 但是有时候没有价值。 该公式将导致#VALUE! 那么,是否有可能获得第一个和第二个“|”之间的值 字符,但如果没有价值,复制整个单元格?

我使用的公式是: =TRIM(LEFT(SUBSTITUTE(MID(B2;FIND("|";SUBSTITUTE(B2;"|";"|";2))+1;LEN(B2));"|";REPT(" ";LEN(B2)));LEN(B2)))

我想要的结果是:

 |---------------------|------------------| | Collected | Data | |---------------------|------------------| | Value 2 | Value|Value 2 | |---------------------|------------------| | Value | Value | |---------------------|------------------| 

我想这需要一个模块? 非常感谢。

尝试使用IFERROR()

 =IFERROR(TRIM(LEFT(SUBSTITUTE(MID(G2;FIND("|";SUBSTITUTE(G2;"|";"|";2))+1;LEN(G2));"|";REPT(" ";LEN(G2)));LEN(G2))),TRIM(G2))