Como obter excel hierarquia de delineamento automático em grupos?

3

Então eu tenho um monte de dados em uma planilha do Excel que se parece com isso:

Level   Hierarchy       Name
0       1               Sam
1       1.1             Bill
2       1.1.1           George
3       1.1.1.1         Fred
4       1.1.1.1.1       Richard
4       1.1.1.1.2       Steve
4       1.1.1.1.3       Max
4       1.1.1.1.4       Sven
3       1.1.1.2         Mike
4       1.1.1.2.1       John
4       1.1.1.2.2       Isaac
4       1.1.1.2.3       Zack
2       1.1.2           James
3       1.1.2.1         Henry
4       1.1.2.1.1       Greg
            .
            .
            .

Eu gostaria de criar grupos automaticamente na planilha, de modo que Richard, Steve, Max e Sven sejam agrupados sob Fred; John, Isaac e Zack estão sob Mike; etc ...; e todos eles rolam sob Sam.

Eu tentei usar o esquema automático do Excel recurso, mas recebo a mensagem "Não é possível criar um esquema". Alguém pode me dizer como fazer isso funcionar ou sugerir outra maneira de fazer isso?

Os dados vêm de outro sistema, mas eu posso transformar os dados antes de serem importados para o Excel - se isso facilitar.

    
por JoeNahmias 01.05.2014 / 00:52

5 respostas

4

Se você tiver um número finito de níveis, eu faria o seguinte. Se seus dados precisarem ser atualizados, ele terá a vantagem de ser uma atualização simples de pivô (ou seja, você o configura apenas uma vez):

  1. Crie novas colunas (número = nível máximo) para representar o chefe da pessoa em cada nível da hierarquia (note que ele é ordenado pelo campo hiearchy)

  2. FórmulaemD3ecopiadaparacimaeparabaixo:=IF($B3=D$2,$A3,IF($B3<D$2,"",D2))

  3. Crie uma tabela dinâmica (visão compacta ou de contorno, dependendo de sua preferência), definindo cada chefe de nível como um rótulo de linha
  4. Filtre as saliências de nível em branco em cada nível

    
por 01.05.2014 / 15:24
3

Para usar o recurso de agrupamento de contorno automático, você precisa inserir (manualmente) linhas de resumo com a função Subtotal (). O Excel reconhecerá isso como o ponto de interrupção do agrupamento. Para obter detalhes, consulte o artigo da Microsoft Estrutura de tópicos (grupo) dados em uma planilha .

    
por 01.05.2014 / 01:01
1

Eu carregaria essa tabela no Power Pivot e nivelaria a hierarquia em níveis, usi as funções DAX, por exemplo. PATHITEM

link

Se você não puder usar o Power Pivot, eu obteria o sistema de origem para nivelar a hierarquia em colunas de nível de maneira semelhante.

A apresentação estaria em uma Tabela Dinâmica, na qual você pode expandir os nós. Isso se ajustará automaticamente aos novos dados conforme eles chegam, sem mexer nas fórmulas.

A grande advertência é que você precisa corrigir o número máximo de níveis.

    
por 01.05.2014 / 03:14
0

Abaixo das linhas de grupos de macros vinculados (linhas de contorno automáticas) com base na coluna de hierarquia. Basta selecionar números de nível (formatados com pontos finais [coluna de hierarquia]) e executar a macro. Funciona em um intervalo e em uma tabela. No total, contar linhas etc. serão adicionadas.

Linhas agrupadas

Código VBA - linhas de grupos automáticos

    
por 20.09.2017 / 08:37
0

Um código VBA para agrupar automaticamente as linhas pelo número na coluna da hierarquia

For i = 3 To RowLength 
    On Error Resume Next
    levelNo = Len(Cells(i, WBSColNo)) - Len(Replace(Cells(i, WBSColNo), ".", "")) + 1
    Rows(i).OutlineLevel = levelNo  
 Next

Atenciosamente

    
por 16.09.2018 / 12:47