Como inserir espaços antes das letras maiúsculas no Excel?
Formatar corretamente os dados no Excel é essencial para garantir clareza e facilitar a análise — especialmente ao trabalhar com cadeias de texto importadas ou concatenadas que carecem de legibilidade. Um cenário comum é deparar-se com texto em que as palavras estão coladas sem espaços, como «DataFormattingTool», tornando a leitura e o processamento mais difíceis. Inserir espaços antes de cada letra maiúscula ajuda a separar as palavras, tornando as suas folhas de cálculo mais amigáveis e profissionais, tanto para interpretação de dados como para partilha. Este guia apresenta vários métodos práticos que pode utilizar para adicionar rapidamente espaços antes de cada letra maiúscula no Excel, assegurando que os seus dados permaneçam organizados e facilmente geríveis em qualquer situação.

Inserir espaços antes de cada letra maiúscula no Excel
Inserir espaços antes de cada letra maiúscula com uma fórmula (Excel 2019 e versões posteriores)
Utilizar fórmulas do Excel é uma forma simples e fiável de inserir espaços antes das letras maiúsculas. Esta abordagem não exige conhecimentos de programação nem ferramentas especiais, sendo ideal para utilizadores que pretendem automatizar o processo com as funções integradas do Excel. O método seguinte tira partido das modernas funções de matriz dinâmica e manipulação de texto disponíveis no Excel 2019, Excel 2021 e Microsoft 365.
Cenário aplicável: Ideal para utilizadores com versões recentes do Excel que precisem de uma solução rápida baseada em fórmulas e queiram evitar o uso de VBA ou extras. Esta abordagem tem a vantagem de se atualizar automaticamente sempre que as células forem alteradas ou ao colar novos dados, mas poderá não ser compatível com versões mais antigas do Excel.
Para implementar, siga estes passos:
1. Copie e cole a seguinte fórmula numa célula vazia (por exemplo, B2, se o seu texto original estiver na célula A2) e prima Enter para obter o primeiro resultado no Excel 365 ou 2021. No Excel 2019, utilize Ctrl+Shift+Enter para aplicá-la como fórmula de matriz:
=TRIM(LEFT(A2,1) & TEXTJOIN("", TRUE, IF(CODE(MID(A2, ROW(INDIRECT("2:" & LEN(A2))), 1))>=65, IF(CODE(MID(A2, ROW(INDIRECT("2:" & LEN(A2))), 1))<=90, " "&MID(A2, ROW(INDIRECT("2:" & LEN(A2))), 1), MID(A2, ROW(INDIRECT("2:" & LEN(A2))), 1)), MID(A2, ROW(INDIRECT("2:" & LEN(A2))), 1))))
2. Após obter o primeiro resultado, arraste a alça de preenchimento para baixo para aplicar a fórmula às restantes linhas conforme necessário. O resultado apresentará o seu Texto Original com espaços inseridos antes de cada letra maiúscula.

- ESQUERDA(A2;1): Devolve o primeiro carácter da cadeia inalterado, evitando um espaço desnecessário no início.
- INDIRETO("2:" & NÚM.CARACT(A2)): Gera uma sequência que faz referência a cada carácter subsequente pela sua posição, do segundo até ao último.
- EXT.TEXTO(A2; LIN(...);1): Extrai um carácter de cada vez com base na posição.
- CÓDIGO(...): Avalia cada carácter extraído para verificar o respetivo valor ASCII; os valores entre 65 e 90 correspondem às letras maiúsculas do alfabeto inglês (A–Z).
- JUNTAR.TEXTO(« »; VERDADEIRO; ...): Concatena cada carácter, inserindo um espaço antes dos identificados como letras maiúsculas e ignora qualquer texto vazio quando é especificado VERDADEIRO.
- ARRUMAR(...): Remove os espaços iniciais e finais que possam ter sido adicionados durante o processo.
Nota: Podem ocorrer erros se a célula original estiver vazia ou contiver valores não textuais. Certifique-se de que os seus dados estão formatados como texto para obter os melhores resultados. Ao arrastar a fórmula, verifique se as referências das células estão corretas e ajuste-as caso os seus dados comecem numa linha ou coluna diferente.
Inserir espaços antes de cada letra maiúscula com Kutools para Excel
O «Kutools para Excel» oferece uma forma altamente eficiente de inserir espaços antes de cada letra maiúscula em todo o seu intervalo de dados selecionado. A sua funcionalidade integrada «Adicionar Texto» simplifica este processo, proporcionando uma solução prática para utilizadores que pretendem concluir a tarefa com apenas alguns cliques — sem precisar de memorizar fórmulas complexas ou recorrer a código.
Cenário aplicável: Esta solução é ideal para utilizadores que lidam frequentemente com grandes volumes de dados, preferem uma interface gráfica ou não se sentem à vontade com fórmulas e código. Oferece operações rápidas em lote e reduz o risco de erros nas fórmulas. O único requisito é ter o Kutools para Excel instalado.
1. Selecione o intervalo de células onde pretende adicionar espaços antes das letras maiúsculas. Em seguida, aceda ao menu «Kutools» > «Texto» > «Adicionar Texto» para abrir as opções relevantes.
2. Na caixa de diálogo «Adicionar Texto», insira um espaço na caixa «Texto». Em seguida, ative a opção «Adicionar apenas a» e selecione «Antes de letras maiúsculas» no menu pendente.
3. Clique em «OK» para aplicar as alterações. Será inserido um espaço antes de cada letra maiúscula na sua seleção, conforme ilustrado abaixo:
Precauções:
- Verifique cuidadosamente a sua seleção, pois esta operação é aplicada diretamente aos seus dados. Como boa prática, mantenha sempre uma cópia de segurança antes de utilizar funcionalidades de edição em lote.
- Esta função diferencia maiúsculas de minúsculas e afeta apenas as letras maiúsculas (A-Z).
Inserir espaços antes de cada letra maiúscula com Função Definida pelo Utilizador
Para utilizadores que procurem maior flexibilidade ou uma solução reutilizável para processamento personalizado, criar uma Função Definida pelo Utilizador (FDU) em VBA permite implementar uma lógica precisa para inserir espaços antes de letras maiúsculas. Esta abordagem mantém a sua folha de cálculo dinâmica, já que a função funciona como qualquer outra fórmula do Excel e atualiza-se automaticamente.
Vantagens: Oferece total personalização e pode ser reutilizada em diferentes livros se copiar o código.
Desvantagens: Requer conhecimentos básicos do editor VBA. As fórmulas baseadas em FDU poderão não funcionar em todos os ambientes do Excel, especialmente no Excel Online ou com determinadas restrições de macros.
1. Abra a folha de cálculo que contém as cadeias de texto a processar.
2. Prima ALT + F11 para abrir o Editor do Microsoft Visual Basic for Applications (VBA).
3. No editor do VBA, clique em «Inserir» > «Módulo» e copie e cole o seguinte código na nova janela de módulo criada.
Código VBA: Inserir espaços antes das letras maiúsculas
Function AddSpaces(pValue As String) As String
'Updateby Extendoffice
Dim xOut As String
xOut = VBA.Left(pValue, 1)
For i = 2 To VBA.Len(pValue)
xAsc = VBA.Asc(VBA.Mid(pValue, i, 1))
If xAsc >= 65 And xAsc <= 90 Then
xOut = xOut & " " & VBA.Mid(pValue, i, 1)
Else
xOut = xOut & VBA.Mid(pValue, i, 1)
End If
Next
AddSpaces = xOut
End Function
4. Guarde o seu projeto e feche o editor do VBA. Volte à folha de cálculo. Numa célula vazia junto aos seus dados (por exemplo, B2, se os seus dados estiverem em A2), introduza a seguinte fórmula e prima Enter:
=addspaces(A2) Arraste a alça de preenchimento da célula para baixo para aplicar a fórmula FDU ao restante da lista. Cada cadeia de texto exibirá espaços inseridos antes de cada letra maiúscula, conforme projetado.

Dicas e resolução de problemas:
- Para garantir que a FDU permanece disponível após reabrir o ficheiro, guarde o livro como um ficheiro ativado para macros (*.xlsm ou *.xlsb).
- As alterações nos seus dados de texto atualizarão automaticamente o resultado da FDU.
- As FDUs não são compatíveis com o Excel Online nem com determinados ambientes com restrições de macros.
Inserir espaços antes de cada letra maiúscula com código VBA
Se preferir uma solução capaz de processar um grande volume de dados de uma só vez e aplicar alterações permanentes diretamente na sua folha de cálculo, utilizar uma macro VBA é uma excelente opção. Este método é ideal para utilizadores avançados ou para tarefas pontuais de limpeza, já que modifica as células selecionadas diretamente.
Benefícios: Processa eficientemente grandes conjuntos de dados, dispensa a introdução de fórmulas nas células e oferece maior controlo sobre as células a processar.
Considerações: Como este método altera diretamente os seus dados, faça sempre uma cópia de segurança antes de executar a macro. As macros poderão estar desativadas por defeito em alguns livros por motivos de segurança — ative-as conforme necessário para prosseguir.
1. Prima ALT + F11 para abrir a janela «Microsoft Visual Basic for Applications».
2. Clique em «Inserir» > «Módulo» e copie o código seguinte para a janela do Módulo:
Código VBA: Inserir espaços antes das letras maiúsculas
Sub AddSpacesRange()
'Updateby Extendoffice
Dim Rng As Range
Dim WorkRng As Range
Dim xOut As String
Dim xValue As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
For Each Rng In WorkRng
xValue = Rng.Value
xOut = VBA.Left(xValue, 1)
For i = 2 To VBA.Len(xValue)
xAsc = VBA.Asc(VBA.Mid(xValue, i, 1))
If xAsc >= 65 And xAsc <= 90 Then
xOut = xOut & " " & VBA.Mid(xValue, i, 1)
Else
xOut = xOut & VBA.Mid(xValue, i, 1)
End If
Next
Rng.Value = xOut
Next
Application.ScreenUpdating = True
End Sub 3. Prima a tecla «F5» ou clique no botão «Executar» para executar a macro. Irá aparecer uma caixa de diálogo a solicitar que escolha o intervalo que pretende modificar.
4. Após selecionar o intervalo e clicar em «OK», a macro insere imediatamente espaços antes de todas as letras maiúsculas nas células escolhidas.
Notas para resolução de problemas:
- Se a macro parecer não estar a fazer nada, verifique se selecionou o intervalo pretendido e se as macros estão ativadas nas definições do Excel.
- Esta operação não pode ser anulada após a sua execução. Caso tenha dúvidas, utilize uma cópia de segurança.
- A macro está otimizada para letras maiúsculas do alfabeto inglês (A–Z). Os resultados podem variar ao utilizar caracteres não convencionais ou alfabetos localizados.
Independentemente da abordagem que escolher, inserir espaços antes de cada letra maiúscula no Excel melhora significativamente a legibilidade das suas cadeias de caracteres. Cada método adapta-se a cenários específicos: fórmulas para cálculos dinâmicos, Kutools para automação intuitiva, UDFs para reutilização e código VBA para operações avançadas em massa. Antes de aplicar qualquer uma destas técnicas em lote, verifique cuidadosamente os seus dados e guarde sempre uma cópia de segurança dos valores originais para evitar perdas acidentais durante o processamento. Se surgirem erros, reveja passo a passo o seu processo e confirme se a sua versão do Excel suporta as funções ou o código utilizados. Para mais estratégias e dicas de resolução de problemas no Excel,explore a nossa vasta coleção de tutoriais.
Artigo relacionado:
Como adicionar espaços automaticamente após as vírgulas no Excel?
As Melhores Ferramentas de Produtividade para o Office
Potencie as suas competências no Excel com Kutools para Excel e experimente uma eficiência como nunca antes.Kutools para Excel Oferece mais de 300 funcionalidades avançadas para impulsionar a produtividade e Economizar Tempo.Clique aqui para obter a funcionalidade de que mais precisa...
Office Tab Traz uma interface com separadores para o Office e torna o seu trabalho muito mais fácil
- Ative a edição e leitura com separadores no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novos separadores da mesma janela, em vez de em janelas separadas.
- Aumente a sua produtividade em 50 % e elimine centenas de cliques do rato todos os dias!
Todos os suplementos Kutools — num único instalador.
Kutools for Office reúne suplementos para Excel, Word, Outlook e PowerPoint, além do Office Tab Pro, sendo a solução ideal para equipas que trabalham em várias aplicações do Office.
- Pacote tudo-em-um— suplementos para Excel, Word, Outlook e PowerPoint + Office Tab Pro
- Um instalador, uma licença— configuração em minutos (pronto para MSI)
- Funciona melhor em conjunto— produtividade simplificada em todas as aplicações do Office
- Teste gratuito de 30 dias com todas as funcionalidades— sem registo, sem cartão de crédito
- Melhor relação qualidade-preço— poupe face à compra individual dos suplementos