如果符合条件,则仅将文本的某些部分大写

时间:2019-06-24 17:03:23

标签: excel excel-formula

我怎样才能只对Excel单元格内的内容的第一部分和最后一部分进行大写;并省略破折号所包围的部分。

目前,我在Excel电子表格中具有以下结构;

var msg2 = new XML($('XML Message'));

应用PROPER公式时,它将文本转换为JANSON-CT-RELSON

我怎样才能使公式技能变成破折号?我需要这样:

Janson-Ct-Relson

1 个答案:

答案 0 :(得分:0)

虽然这绝不会赢得任何选美比赛,但它应该起作用:

=PROPER(LEFT(A1,SEARCH("-",A1)-1))&MID(A1,FIND("-",A1),FIND("-",A1,FIND("-",A1)+1)-FIND("-",A1)+1)&PROPER(MID(A1,FIND("~~~~~",SUBSTITUTE(A1,"-","~~~~~",LEN(A1)-LEN(SUBSTITUTE(A1,"-",""))))+1,LEN(A1)))

根据您对OP的评论,如果我们知道中间只有两个缩写,则可以对其进行一些调整:

=PROPER(LEFT(A1,SEARCH("-",A1)-1))&"-"&MID(A1,SEARCH("-",A1)+1,2)&"-"&PROPER(TRIM(RIGHT(SUBSTITUTE(A1,"-",REPT(" ",LEN(A1))),LEN(A1))))

注意:这仅适用于X-Y-Z类型,不适用于W-X-Y-...-Z类型。