Excel函数在第二次出现指定字符之前返回字符

时间:2012-08-31 20:34:25

标签: excel

我想要一个函数来返回单元格中的前两个名称,例如

“琼斯,安娜玛丽”将回归“琼斯安娜”

我试过= LEFT(A1,FIND(“”,A1)-1)但它只返回琼斯。

由于

3 个答案:

答案 0 :(得分:8)

您可以使用此版本

获取第二个空格之前的所有内容

=LEFT(A1,FIND(" ",A1,FIND(" ",A1)+1)-1)

那仍然包含逗号,所以如果你不想要你可以添加一个SUBSTITUTE函数来删除逗号,即

=SUBSTITUTE(LEFT(A1,FIND(" ",A1,FIND(" ",A1)+1)-1),",","")

答案 1 :(得分:1)

=LEFT(SUBSTITUTE(A1," ","-",2),FIND("-",SUBSTITUTE(A1," ","-",2),1)-1)

我使用SUBSTITUTE()函数用连字符替换第二个空格。然后我在SUBSTITUTE字符串上使用了FIND()函数。

答案 2 :(得分:1)

我只想添加另一个答案,即使某些单元格没有两个或更多空格也能正常运行:

= TRIM(LEFT(SUFTTITUTE(A1,“”,REPT(“”,255),2),255))

(来自http://www.mrexcel.com/forum/excel-questions/703900-delete-everything-after-second-space-each-cell.html的mikerickson)

(当然,如果您使用的是非英语系统 - 就像我在瑞典一样 - 您可能需要用分号替换所有逗号。)