使用excel公式为超过2个空格的文本创建缩写
我正在尝试编写一个公式来创建excel单元格中包含两个以上空格的文本的缩写,该公式将在空格后修剪每个字符串的第一个单词,并将其作为字符串,如下面给出的示例所示 示例:全球远程访问管理系统-GRAMS 公式: =如果(或(LEN(K7)>10,((LEN(K7)-LEN(替换(K7,“,”))>2),连接((左(K7),3),右(K7,3)),K2)) 我不知道为什么它不起作用。我试着单独找麻烦,但作为一个公式,它失败了使用excel公式为超过2个空格的文本创建缩写,excel,excel-formula,ms-office,formula,Excel,Excel Formula,Ms Office,Formula,我正在尝试编写一个公式来创建excel单元格中包含两个以上空格的文本的缩写,该公式将在空格后修剪每个字符串的第一个单词,并将其作为字符串,如下面给出的示例所示 示例:全球远程访问管理系统-GRAMS 公式: =如果(或(LEN(K7)>10,((LEN(K7)-LEN(替换(K7,“,”))>2),连接((左(K7),3),右(K7,3)),K2)) 我不知道为什么它不起作用。我试着单独找麻烦,但作为一个公式,它失败了 任何帮助都将不胜感激。提前谢谢。如果您有Excel 365或Excel 20
任何帮助都将不胜感激。提前谢谢。如果您有Excel 365或Excel 2019或Excel Web,则以下公式适用于您
=TEXTJOIN(“,TRUE,MID(TRIM(MID(SUBSTITUTE(“&A1)”,REPT(“,99)),ROW($A$1:$A$10)*99,99)),1,1))
注:
行($A$1:$A$10)
零件以适应。它假定您的数据位于单元格A1中在具有
CONCAT
功能的更高版本的Excel中,您可以使用:
=CONCAT(LEFT(FILTERXML("<t><s>"&SUBSTITUTE(A1," ","</s><s>")&"</s></t>","//s")))
然后,主要公式是:
=INDEX(LEFT(TRIM(MID(SUBSTITUTE(A1," ",REPT(" ",99)),seq_99,99))),1,1) &
INDEX(LEFT(TRIM(MID(SUBSTITUTE(A1," ",REPT(" ",99)),seq_99,99))),2,1) &
INDEX(LEFT(TRIM(MID(SUBSTITUTE(A1," ",REPT(" ",99)),seq_99,99))),3,1) &
INDEX(LEFT(TRIM(MID(SUBSTITUTE(A1," ",REPT(" ",99)),seq_99,99))),4,1) &
INDEX(LEFT(TRIM(MID(SUBSTITUTE(A1," ",REPT(" ",99)),seq_99,99))),5,1) &
INDEX(LEFT(TRIM(MID(SUBSTITUTE(A1," ",REPT(" ",99)),seq_99,99))),6,1) &
INDEX(LEFT(TRIM(MID(SUBSTITUTE(A1," ",REPT(" ",99)),seq_99,99))),7,1)
请注意,每行代表一个字母,您将需要尽可能多的行,因为字符串中可能有单词。(您可以有更多的行,因为不匹配的行只会向字符串中添加一个空字符串,这是零)
=INDEX(LEFT(TRIM(MID(SUBSTITUTE(A1," ",REPT(" ",99)),seq_99,99))),1,1) &
INDEX(LEFT(TRIM(MID(SUBSTITUTE(A1," ",REPT(" ",99)),seq_99,99))),2,1) &
INDEX(LEFT(TRIM(MID(SUBSTITUTE(A1," ",REPT(" ",99)),seq_99,99))),3,1) &
INDEX(LEFT(TRIM(MID(SUBSTITUTE(A1," ",REPT(" ",99)),seq_99,99))),4,1) &
INDEX(LEFT(TRIM(MID(SUBSTITUTE(A1," ",REPT(" ",99)),seq_99,99))),5,1) &
INDEX(LEFT(TRIM(MID(SUBSTITUTE(A1," ",REPT(" ",99)),seq_99,99))),6,1) &
INDEX(LEFT(TRIM(MID(SUBSTITUTE(A1," ",REPT(" ",99)),seq_99,99))),7,1)