Fórmula Excel: divida a frase em palavras
No Excel, como sabemos, o Text to Columns pode dividir a frase em células com base no delimitador. Mas, às vezes, você deseja usar uma fórmula para resolver o trabalho. Neste tutorial, ele fornece uma fórmula de matriz para lidar com isso.
Fórmula genérica:
=MID(" "&$TXT&" ", SMALL(IF(ISERROR(SEARCH(MID(" "&$TXT&" ", ROW($1:$99), 1), " ")), "", ROW($1:$99)+1), COLUMN(A1)), SMALL(IF(ISERROR(SEARCH(MID(" "&$TXT&" ", ROW($1:$99), 1), " ")), "", ROW($1:$99)), COLUMN(A1)+1)-SMALL(IF(ISERROR(SEARCH(MID(" "&$TXT&" ", ROW($1:$99), 1), " ")), "", ROW($1:$99)), COLUMN(A1))-1) |
Argumentos
Number: the sentence or text string you want to split to words in separated cells. |
Como essa fórmula funciona
Tome a célula B3 como exemplo, você pode usar a fórmula abaixo:
=MID(" "&$B3&" ", SMALL(IF(ISERROR(SEARCH(MID(" "&$B3&" ", ROW($1:$99), 1), " ")), "", ROW($1:$99)+1), COLUMN(A1)), SMALL(IF(ISERROR(SEARCH(MID(" "&$B3&" ", ROW($1:$99), 1), " ")), "", ROW($1:$99)), COLUMN(A1)+1)-SMALL(IF(ISERROR(SEARCH(MID(" "&$B3&" ", ROW($1:$99), 1), " ")), "", ROW($1:$99)), COLUMN(A1))-1) |
Press Shift + Ctrl + Enter para extrair a primeira palavra e, em seguida, arraste a alça de preenchimento para a direita até que todas as palavras sejam extraídas.
Explicação
MID função extrai uma substring de uma string de texto com base na posição inicial especificada e no número de caracteres.
ROW função retorna o número de linhas, aqui nós o definimos como retorna uma matriz de 1 a 99.
Então a fórmula MID ("" & $ B2 & "", ROW ($ 1: $ 99), 1)
= MID ("Núcleo Lily Classe A Grau 3", {1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18; 19 ; 20; 21; 22; 23; 24; 25; 26; 27; 28; 29; 30; 31; 32; 33; 34; 35; 36; 37; 38; 39; 40; 41; 42; 43; 44 ; 45; 46; 47; 48; 49; 50; 51; 52; 53; 54; 55; 56; 57; 58; 59; 60; 61; 62; 63; 64; 65; 66; 67; 68; 69 ; 70; 71; 72; 73; 74; 75; 76; 77; 78; 79; 80; 81; 82; 83; 84; 85; 86; 87; 88; 89; 90; 91; 92; 93; 94 ; 95; 96; 97; 98; 99}, 1)
= {""; "C"; "l"; "a"; "s"; "s"; ""; "A"; ""; "G"; "r"; "a"; "d" ; "e"; ""; "3"; ""; "L"; "i"; "l"; "y"; ""; "C"; "o"; "r"; "e"; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ";"; ""; ""; ""; ""; ""; "" ; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ";"; ""; ""; ""; ""; ""; " ";" ";" ";" ";" ";" ";
""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ";"; ""; ""; ""; ""; ""; "" ; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ";"; ""; ""; ""; ""; ""; " "}
SEARCH função retorna a localização do caractere específico ou texto da string de texto fornecida. Se a string não for encontrada, a função retorna um valor de erro.
A fórmula PESQUISA (MID ("" & $ B3 & "", ROW ($ 1: $ 99), 1), "")
= {1; #VALOR!; # VALOR!; # VALOR!; # VALOR!; # VALOR!; 1; #VALOR!; 1; #VALOR!; # VALOR !;
#VALOR!; # VALOR!; # VALOR!; 1; #VALOR!; 1; #VALOR!; # VALOR!; # VALOR!; # VALOR!; 1;
#VALUE!;#VALUE!;#VALUE!;#VALUE!;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;
1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;
1;1;1;1;1}
ISERROR função retorna TRUE se o valor for um erro.
Então fórmula ISERROR (SEARCH (MID ("" & $ B3 & "", ROW ($ 1: $ 99), 1), ""))
= {FALSE; TRUE; TRUE; TRUE; TRUE; TRUE; FALSE; TRUE; FALSE; TRUE; TRUE; TRUE; TRUE;
TRUE; FALSE; TRUE; FALSE; TRUE; TRUE; TRUE; TRUE; FALSE; TRUE; TRUE; TRUE; TRUE;
FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE;
FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE;
FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE;
FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE;
FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE;
FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE; FALSE;
FALSO}
IF função testes para uma condição específica. Aqui ele tem três argumentos, o primeiro deve ser uma expressão lógica, se o primeiro argumento for “TRUE”, então o segundo argumento será exibido, e se o primeiro argumento for “FALSE”, o argumento 3 será exibido.
A fórmula SE (ISERROR (SEARCH (SEARCH (MID ("" & $ B3 & "", ROW ($ 1: $ 99), 1), "")), "", ROW ($ 1: $ 99))
={1;"";"";"";"";"";7;"";9;"";"";"";"";"";15;"";17;"";"";"";"";22;"";"";"";"";27;28;29;30;31;32;33;34;35;
36;37;38;39;40;41;42;43;44;45;46;47;48;49;50;51;52;53;54;55;56;57;58;59;60;61;62;63;
64;65;66;67;68;69;70;71;72;73;74;75;76;77;78;79;80;81;82;83;84;85;86;87;88;89;90;91;92;
93;94;95;96;97;98;99}
SMALL função em seguida, retorna o menor valor da matriz.
COLUMN função retorna o número da coluna cuja fórmula aparece ou retorna o número da coluna da referência fornecida.
Então
PEQUENO (SE (ISERROR (SEARCH (MEARCH (MID ("" & $ B3 & "", ROW ($ 1: $ 99), 1), "")), "", ROW ($ 1: $ 99)), COLUMN (A1))
= {1}
Então a fórmula
PEQUENO (SE (ISERROR (PROCURAR (MEIO ("" & $ B3 & "", ROW ($ 1: $ 99), 1), "")), "", ROW ($ 1: $ 99)), COLUNA (A1) +1 ) - PEQUENO (SE (ISERROR (PROCURAR (MEIO ("" & $ B3 & "", ROW ($ 1: $ 99), 1), "")), "", ROW ($ 1: $ 99)), COLUNA (A1) )
= {7-1}
= {6}
Então fórmula
MID ("" & $ B3 & "", PEQUENO (SE (ISERROR (SEARCH (MID ("" & $ B3 & "", ROW ($ 1: $ 99), 1), "")), "", ROW ($ 1: $ 99) +1), COLUNA (A1)), PEQUENO (SE (ISERROR (PROCURAR (MEIO ("" & $ B3 & "", ROW ($ 1: $ 99), 1), "")), "", ROW ( $ 1: $ 99)), COLUNA (A1) +1) -SMALL (SE (ISERROR (PROCURAR (MID ("" & $ B3 & "", ROW ($ 1: $ 99), 1), "")), "", ROW ($ 1: $ 99)), COLUNA (A1)) - 1)
= MID ("" & $ B3 & "", 2,6-1)
= {Class}
Arquivo de exemplo
Clique para baixar o arquivo de amostra
Fórmulas Relativas
- Extrair da direita até o personagem
Aqui apresenta a fórmula para extrair o texto do lado direito de um determinado texto até um caractere especificado. - Cortar texto para N palavras
Aqui, apresenta a fórmula para extrair n palavras do lado esquerdo de uma string de texto. - Adicione zeros saltados para corrigir o comprimento
Este tutorial fornece fórmulas para adicionar zero à esquerda para fazer o texto com o mesmo comprimento. - Divida dólares e centavos
Para dividir dólares e centavos em duas colunas com fórmulas no Excel.
Funções Relativas
- Função MID
Extraia parte do texto de um valor de célula com base na localização e comprimento. - Função COLUMN
Retorna o número da coluna cuja fórmula aparece ou retorna o número da coluna. - Função ROW
Obtenha o número da linha. - Função PESQUISA
Encontre a posição de um caractere ou substring específico da string de texto fornecida. - Função IF
Teste para uma condição específica.
As melhores ferramentas de produtividade para escritório
Kutools para Excel - ajuda você a se destacar na multidão
Kutools para Excel possui mais de 300 recursos, Garantindo que o que você precisa está a apenas um clique de distância...
Guia Office - Habilite leitura e edição com guias no Microsoft Office (inclui Excel)
- Um segundo para alternar entre dezenas de documentos abertos!
- Reduza centenas de cliques do mouse para você todos os dias, diga adeus à mão do mouse.
- Aumenta sua produtividade em 50% ao visualizar e editar vários documentos.
- Traz guias eficientes para o Office (inclui Excel), assim como Chrome, Edge e Firefox.