2017-03-15 745 views
1

我想删除冒号前的所有内容,以便只留下名称。我目前的公式可以做到这一点,但如果没有冒号,则会出现#!值错误。如果没有“:”存在,它应该不会改变,只需复制确切的名称。删除Excel中找到的特定字符前的所有内容

列C

 key1:john 
     key1:mike 
     key1:edmund 
     hello 
     key3:edmund 

etc 

我的公式= IFERROR(RIGHT(C1,LEN(C1) - 查找( “:”,C1)), “”)

列d

 john 
     mike 
     edmund 
     #!Value 
     edmund 

etc 

回答

2

你的公式几乎做它,只有这一个变化:

=IFERROR(RIGHT(C1,LEN(C1)-FIND(":",C1)), C1) 
              ^----- replaced "" with C1 

这个公式给出了结果:

john 
mike 
edmund 
hello 
edmund 
+1

哈哈感谢的人!我现在觉得很蠢 – encrypt

+0

所以这个工程,但现在我有另一个问题。现在我有2个独立的列,一个是原创的,另一个是公式(我想要的)。我想从我的excel表格中完全删除第一个C列,但是如果我这样做,新的D列不能引用它 – encrypt

+0

有没有办法用所应用的公式替换现有列,全部在该列中? – encrypt

0

考虑:

=IF(ISERROR(FIND(":",A1)),A1,MID(A1,FIND(":",A1)+1,9999)) 
0

这是我的问题的解决方案:

=IF(ISNUMBER(SEARCH(":",C1)),RIGHT(C1,LEN(C1)-FIND(":",C1)),C1) 
相关问题