我需要使用另一个单元格中的数据组合填充一个单元格。以下是我的数据的外观(抱歉,我无法发布图片):列A =名称列B =团队列C =简称
我尝试根据一系列应用于名称(A列)的规则来填充短名称。我已经完成了一些工作。所以下面是我希望得到的结果:
这是一条有效的规则- 如果名称中包含“:“,我将使用其后的前4个字符填充单元格[IFERROR(B2&""&MID(A2,FIND(“:“,A2,1)+1,4),"”)]。如果未找到:,则将C列留空。在引入新需求之前,这一直运行良好...
因此,现在C列将基于以下3项之一填充:
1.现在发生的事情。所以如果:exists根据上面的公式填充列C
1.如果:不存在,我需要检查A列中是否有“(ENH)"。如果(ENH)存在,我需要用A列中显示的所有内容填充C列。如果(ENH)存在,它将始终是A列中显示的前5个字符。
1.如果:或(ENH)不存在,则C列保持空白
使用我的真实的数据,在一天结束时,C列将显示以下3项内容之一,按我的规则顺序显示:
1.金牌运维
1.(ENH)UI重构
1.空白
2条答案
按热度按时间llew8vvj1#
您可以使用以下公式填充C "Short Name"列:
结果如下表所示:
| 名称列|团队列|简称|
| - ------| - ------| - ------|
| foobar:操作与维护|黄金|金牌运维|
| (ENH)UI重构|管他呢1|(ENH)UI重构|
| 弗卢伯|管他呢2||
注:
FIND()
区分大小写,而SEARCH()
不区分大小写。我使用FIND()
表示"(ENH)"
,因为您似乎需要完全匹配。如果"(enh)"
也应该匹配,请使用SEARCH()
。ISNUMBER(...)
可用于检查SEARCH()
和FIND()
是否返回有效索引,而不是#VALUE!
,从而检查是否找到搜索文本。也可使用NOT(ISERROR(...))
。a8jjtwal2#
根据没有发布示例的小信息,这将使用Office 365工作:第一个月
如果你需要一个更好的答案,请遵循dbc的建议,将数据作为减价表发布。