Como ordenar dados com células mescladas no Excel?

Tentar ordenar dados no Excel que contêm células mescladas frequentemente resulta em um aviso de erro, conforme mostrado na captura de tela à esquerda. Esse comportamento é resultado das limitações atuais do Excel – o Excel não suporta nativamente a ordenação de intervalos com células mescladas, pois intervalos mesclados interrompem a estrutura de dados subjacente e dificultam o funcionamento normal da função de ordenação.
Ao trabalhar com planilhas que utilizam células mescladas para formatação ou agrupamento de dados, você ainda pode precisar organizar ou reordenar seus dados. Para realizar isso, é necessário primeiro lidar adequadamente com essas células mescladas. Abaixo, você encontrará vários métodos práticos para manipular e ordenar dados com células mescladas enquanto preserva suas informações.
Ordenar dados com células mescladas desmesclando todas as células primeiro
Ordenar dados com células mescladas usando Kutools para Excel
Ordenar dados com células mescladas usando automação VBA (desmesclar, preencher, ordenar, remesclar)
Ordenar dados com células mescladas desmesclando todas as células primeiro
Como a função de ordenação padrão do Excel não pode operar em intervalos com células mescladas, a abordagem necessária é desmesclar todas as células mescladas dentro da sua lista de dados primeiro. Uma vez desmescladas, espaços em branco aparecerão onde estavam as células mescladas, então será necessário preencher essas células vazias para manter uma ordenação precisa. Aqui está o método passo a passo:
1. Selecione a lista completa ou tabela que contém as células mescladas que você deseja ordenar. Com os dados selecionados, clique em Página Inicial → Mesclar e Centralizar para desmesclar todas as células mescladas. Consulte a captura de tela abaixo para orientação visual:
2. Após desmesclar, você notará que as áreas anteriormente mescladas agora são células em branco. Enquanto as células mescladas ainda estão selecionadas, vá até a aba Página Inicial e clique em Localizar e Selecionar → Ir Para Especial. Este passo garante uma seleção eficiente em massa de todas as células em branco dentro do seu intervalo, tornando o próximo passo muito mais rápido.
3. Na caixa de diálogo Ir Para Especial, escolha a opção Em Branco e clique em OK. Isso destacará imediatamente todas as células em branco no intervalo selecionado.
4. Com os espaços em branco ainda destacados, vá até a Barra de Fórmulas e digite o símbolo =, depois selecione a célula diretamente acima da primeira célula em branco para criar uma fórmula de referência (por exemplo, se C3 está em branco, insira =C2). Em vez de pressionar apenas Enter, mantenha pressionado Ctrl e pressione Enter para preencher todos os espaços em branco selecionados com os valores das células acima de uma só vez.
Após este passo, cada área anteriormente mesclada é preenchida com seu valor original, garantindo a integridade dos seus dados durante a ordenação.
5. Agora você está pronto para ordenar seus dados normalmente – selecione qualquer coluna, vá até a aba Dados e escolha Ordenar de A a Z ou Ordenar de Z a A. Se você deseja restaurar a formatação mesclada após a ordenação, pode remesclar manualmente valores idênticos adjacentes, mas tome cuidado para evitar mesclar dados não relacionados.
Dica: Antes de prosseguir, sempre faça um backup dos seus dados originais se manter o formato mesclado for importante. Além disso, esteja ciente de que, após desmesclar e preencher os espaços em branco, as fórmulas estarão presentes. Se você quiser converter fórmulas em valores, selecione o intervalo, copie e cole como valores para evitar atualizações indesejadas de fórmulas após a ordenação.
Ordenar dados com células mescladas usando Kutools para Excel
Kutools para Excel oferece uma solução mais direta e eficiente para ordenar dados com células mescladas, tornando o processo muito mais confiável ao lidar com grandes conjuntos de dados ou necessidades frequentes de formatação. O utilitário Desmesclar Células e Preencher Valor no Kutools para Excel pode automaticamente desmesclar células e preencher os espaços em branco resultantes com o valor mesclado original, eliminando a intervenção manual e melhorando significativamente a eficiência.
1. Destaque o intervalo que contém as células mescladas que você deseja ordenar. Em seguida, navegue até Kutools → Mesclar e Dividir → Desmesclar Células e Preencher Valor. Consulte a captura de tela a seguir para orientação:
Ao executar esta operação, todas as células mescladas dentro do intervalo selecionado são rapidamente desmescladas, e as células em branco recém-criadas são preenchidas com o valor correspondente da célula anteriormente mesclada, garantindo consistência em toda a tabela.
2. Agora você pode ordenar seus dados normalmente. Após a ordenação, para uma aparência consistente ou para fins de apresentação de dados, o Kutools também oferece uma maneira rápida de remesclar células com o mesmo conteúdo. Basta selecionar o intervalo ordenado, depois vá até Kutools → Mesclar e Dividir → Remesclar Células Iguais para reaplicar a formatação mesclada de forma eficiente apenas onde os valores são idênticos.
Se você deseja experimentar este utilitário gratuitamente (30 dias), clique para baixá-lo e, em seguida, vá aplicar a operação de acordo com as etapas acima.
Vantagens: Essa abordagem minimiza etapas manuais, reduz a probabilidade de erros e é especialmente adequada ao trabalhar com tabelas complexas ou necessidades regulares de relatórios. Sempre certifique-se de revisar a saída mesclada após a ordenação para verificar que a mesclagem não exclui nenhuma relação de dados importante.
Ordenar dados com células mescladas usando Kutools para Excel
Ordenar dados com células mescladas por automação VBA (desmesclar, preencher, ordenar e remesclar)
Para usuários familiarizados com macros, automatizar o processo via VBA pode simplificar o manuseio de células mescladas – especialmente em tarefas repetitivas ou de grande escala. Essa abordagem pode eficientemente:
- Desmesclar todas as células mescladas em um intervalo especificado
- Preencher as células em branco resultantes com o valor de cima para garantir consistência
- Ordenar os dados por qualquer coluna especificada
- Opcionalmente, remesclar valores idênticos consecutivos nos dados ordenados
Esse método é flexível para fluxos de trabalho personalizados, mas requer a habilitação de macros e operação cuidadosa para evitar perda de dados. Se você é novo no VBA, considere testar em uma planilha de amostra primeiro.
Passos de operação:
1. Na Faixa de Opções, clique em Desenvolvedor → Visual Basic para abrir a janela Visual Basic for Applications, depois clique em Inserir → Módulo. Copie e cole o código a seguir na janela Módulo:
Sub SortDataWithMergedCells()
Dim ws As Worksheet
Dim rng As Range, cell As Range
Dim lastRow As Long, lastCol As Long
Dim sortCol As Variant
Dim reMerge As VbMsgBoxResult
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set ws = ActiveSheet
Set rng = Application.InputBox("Select the data range to sort", xTitleId, Selection.Address, Type:=8)
If rng Is Nothing Then Exit Sub
' Store dimensions
lastRow = rng.Rows.Count + rng.Row - 1
lastCol = rng.Columns.Count + rng.Column - 1
' Unmerge and fill down values
rng.UnMerge
For Each cell In rng
If IsEmpty(cell.Value) Then
cell.Value = cell.Offset(-1, 0).Value
End If
Next cell
' Ask for sort column
sortCol = Application.InputBox("Enter column number in your selection to sort by (e.g. 1 for first column)", xTitleId, 1, Type:=1)
If sortCol = False Then Exit Sub
' Sort the range
rng.Sort Key1:=rng.Cells(1, sortCol), Order1:=xlAscending, Header:=xlNo
' Ask if user wants to re-merge identical consecutive values
reMerge = MsgBox("Do you want to re-merge identical consecutive values in the sorted range (column " & sortCol & ")?", vbYesNo + vbQuestion, xTitleId)
If reMerge = vbYes Then
Dim startCell As Range, endCell As Range
Dim currVal As Variant
Dim i As Long
Set startCell = rng.Cells(1, sortCol)
currVal = startCell.Value
Set endCell = startCell
For i = 2 To rng.Rows.Count
If rng.Cells(i, sortCol).Value = currVal Then
Set endCell = rng.Cells(i, sortCol)
Else
If startCell.Address <> endCell.Address Then
ws.Range(startCell, endCell).Merge
End If
Set startCell = rng.Cells(i, sortCol)
currVal = startCell.Value
Set endCell = startCell
End If
Next i
' Final group
If startCell.Address <> endCell.Address Then
ws.Range(startCell, endCell).Merge
End If
End If
On Error GoTo 0
End Sub
2. Para executar a macro, clique no botão Executar na editor do VBA. Você será solicitado a selecionar o intervalo de dados e o número da coluna de ordenação. Confirme cada solicitação e deixe a macro completar todas as etapas. Se você optar por remesclar, o código automaticamente mesclará células adjacentes com o mesmo valor na coluna designada.
Dicas:
- Sempre faça um backup da sua planilha antes de executar macros VBA, pois ações como desmesclar/remesclar são irreversíveis.
- A ordenação por cabeçalho ou colunas não numéricas pode exigir ajustes extras – certifique-se de especificar o número correto da coluna conforme indicado na sua seleção.
- Se você encontrar erros após a ordenação, verifique referências de linhas ou colunas inteiras e ajuste os parâmetros da macro conforme necessário para o layout específico dos seus dados.
Vantagens: Automatiza uma tarefa repetitiva de várias etapas – especialmente útil para trabalhos recorrentes.
Limitações: Macros VBA requerem a habilitação de macros (possível alerta de segurança), e layouts de tabelas complexos podem precisar de revisão manual após a mesclagem ser restaurada.
Para melhores resultados, teste essa macro em uma duplicata dos seus dados primeiro. Essa solução VBA é particularmente útil para usuários que frequentemente precisam repetir o processo de ordenação e mesclagem ou trabalham com exportações dinâmicas de dados.
Melhores Ferramentas de Produtividade para Office
Potencialize suas habilidades no Excel com o Kutools para Excel e experimente uma eficiência sem igual. O Kutools para Excel oferece mais de300 recursos avançados para aumentar sua produtividade e economizar tempo. Clique aqui para obter o recurso que você mais precisa...
O Office Tab traz interface com abas para o Office e facilita muito o seu trabalho
- Habilite a edição e leitura com abas no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novas abas na mesma janela, em vez de abrir novas janelas.
- Aumente sua produtividade em50% e reduza centenas de cliques do mouse todos os dias!