Exemplos de funções MID - Excel, VBA e planilhas do Google

Baixar exemplo de pasta de trabalho

Baixe a apostila de exemplo

Este tutorial demonstra como usar o Função Excel MID no Excel para extrair texto de uma célula.

Visão geral da função MID

A função MID retorna texto do meio de uma célula, definido por um número inicial e o número de caracteres.

Para usar a função de planilha do MID Excel, selecione uma célula e digite:

(Observe como as entradas da fórmula aparecem)

Sintaxe e entradas da função MID:

= MID (texto, núm_inicial, núm_caracteres)

texto - Uma string de texto.

start_num - O número do caractere a partir do qual iniciar sua seleção.

num_chars - O número de caracteres após o start_num para retornar.

Como usar a função MID no Excel:

A função MID extrai um número específico de caracteres que você especifica de qualquer lugar que você quiser.

= MID (B3, C3, D3)

Ele pode começar a partir de qualquer número visto na coluna C e qualquer número de caracteres na coluna D.

MID para pegar string entre diferentes delimitadores

Se a string que você deseja estiver entre dois delimitadores diferentes, este é um bastante simples. Por exemplo, podemos querer a string entre o traço (“-”) e a barra (“/”).

= MID (B3, FIND ("-", B3) + 1, FIND ("/", B3) -FIND ("-", B3) -1)

Neste caso, podemos usar FIND para verificar em qual posição do caractere o traço começa e adicionar 1 para começar a extrair a partir daí.

Use FIND novamente para verificar em qual posição do caractere a barra começa e menos a posição do traço e 1 para obter o comprimento da string que queremos.

Você também pode usar SEARCH. A diferença entre FIND e SEARCH é que o primeiro diferencia maiúsculas de minúsculas. Encontrar um símbolo como o espaço não importaria.

= MID (B3, FIND ("-", B3) + 1, SEARCH ("/", B3) -SEARCH ("-", B3) -1)

MID para pegar corda entre o mesmo delimitador

Se a string tiver o mesmo delimitador, é um pouco mais difícil do que o anterior porque FIND captura a primeira ocorrência. Por exemplo, podemos querer a string entre o primeiro e o segundo espaços. Mas você também pode indicar uma posição inicial em FIND.

= MID (B3, FIND ("", B3) + 1, FIND ("", B3, FIND ("", B3) +1) -FIND ("", B3) -1)

Ele usa FIND assim como o exemplo acima para verificar em qual posição do caractere o espaço começa e adiciona 1 para começar a extrair a partir daí.

Use FIND novamente para verificar em qual posição de caractere o segundo espaço começa, começando a encontrar 1 caractere após a posição do primeiro espaço.

E por último menos a posição do primeiro espaço e 1 para obter o comprimento da string que queremos.

Você também pode usar SEARCH.

= MID (B3, FIND ("", B3) + 1, SEARCH ("", B3, FIND ("", B3) +1) -SEARCH ("", B3) -1)

MID com número / datas

Observe que MID é uma função de texto. Ao usar o MID, o resultado é um texto. Por exemplo, você não conseguirá somar esses números na célula E3 depois de usar o MID.

O mesmo acontece com as datas, pois são reconhecidas como números de série e não como texto. Pode não ser necessário somar as datas, mas não funciona bem em filtros e tabelas dinâmicas.

Para superar os problemas acima, você pode usar VALUE para converter de texto em valores.

= VALOR (MID (B3, FIND (":", B3) + 2, FIND ("", B3, FIND ("", B3) +1) -FIND (":", B3) -2))

MID para dividir por delimitador comum

Você pode querer dividir todas as palavras em linhas diferentes. Portanto:

= TRIM (MID (SUBSTITUIR (B $ 3, "", REPT ("", LEN (B $ 3))), (LINHAS (B3: B $ 3) -1) * LEN (B $ 3) + 1, LEN (B $ 3 )))

O que ele faz é usar SUBSTITUTE para substituir todos os espaços com um influxo de espaços repetidos usando REPT. O resultado é o texto parecido com este:
“Excel é realmente incrível”

O influxo de repetido é cuidadosamente repetido com o comprimento total do texto original usando LEN. Isso significa que o número da posição de onde começar a extrair é um múltiplo do comprimento total. Para a primeira palavra, extraia da posição 1. Para a segunda, será comprimento total + 1. Para a terceira, comprimento total x 2 + 1. Etc. Para obter a enésima palavra, use ROWS.

Por último, o número de caracteres está sempre usando o comprimento total do texto original.

Encontre a enésima palavra na string

Poderíamos combinar TRIM, LEN, SUBSTITUTE, REPT com MID da seguinte maneira para obter a última palavra da string.

= TRIM (MID (SUBSTITUTE (A $ 2, "", REPT ("", LEN (A $ 2))), (B2-1) * LEN (A $ 2) +1, LEN (A $ 2)))

O que nos daria os seguintes resultados:

Reverter uma string de texto

Você pode reverter uma string de texto combinando a função MID com TEXTJOINT como segue.

= TEXTJOIN ("", 1, MID (A2, {10,9,8,7,6,5,4,3,2,1}, 1))

O que nos daria os seguintes resultados:

MID no Planilhas Google

A função MID funciona exatamente da mesma forma no Planilhas Google e no Excel:

Notas Adicionais

Se num_chars for maior que o comprimento restante do texto, a função MID retornará todo o texto restante.

Exemplos MID em VBA

Você também pode usar a função MID no VBA. Modelo:
application.worksheetfunction.mid (texto, num_início, num_chars)
Para os argumentos da função (texto, etc.), você pode inseri-los diretamente na função ou definir as variáveis ​​a serem usadas.

Voltar para a lista de todas as funções no Excel

Você vai ajudar o desenvolvimento do site, compartilhando a página com seus amigos

wave wave wave wave wave