Notifications
Clear all

Limpar Rótulos de Coluna Tabela Dinamica

16 Posts
3 Usuários
0 Reactions
2,423 Visualizações
(@manojointz)
Posts: 13
Active Member
Topic starter
 

Galera,

Dúvida bem simples... preciso limpar todos os rotulos de linha existentes (independentes de quais sejam) na minha tabela dinamica por VBA. Alguem ajuda??

 
Postado : 19/05/2016 8:50 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Veja:
http://peltiertech.com/referencing-pivo ... es-in-vba/
http://www.databison.com/pivot-table-vb ... -in-excel/

Att

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 19/05/2016 8:58 am
(@manojointz)
Posts: 13
Active Member
Topic starter
 

Boa tarde,

Não consegui achar nenhum macro que resolvesse meu problema (talvez por desconhecimento meu).

Tenho diversos campos inseridos no rótulo de linha da tabela dinâmica, gostaria de retirar todos com macro (limpando assim o rotulo de linhas).

Att,

 
Postado : 19/05/2016 10:33 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Poderia postar seu arquivo modelo?

Att

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 19/05/2016 10:51 am
(@manojointz)
Posts: 13
Active Member
Topic starter
 

Estou enviando um arquivo apenas como exemplo.

Nesta tabela dinamica da aba Plan1, gostaria de retirar os campos "Nome do Aluno" e "Final" do rotulo de linha da tabela dinamica por macro.

Repare que não necessariamente estes vão ser os campos que estarão no rotulo de linhas, gostaria de limpar o rotulo de linhas independente dos campos que estiverem inseridos.

Att,

 
Postado : 19/05/2016 1:12 pm
(@manojointz)
Posts: 13
Active Member
Topic starter
 

Envio novamente o arquivo sem macro, para não criar suspeitas.

 
Postado : 19/05/2016 1:30 pm
(@mprudencio)
Posts: 2749
Famed Member
 

So nao entendi o pq nao retirar manualmente

Para o exemplo apresentado

Sub LimparRotulo()

    ActiveSheet.PivotTables("Tabela dinâmica3").PivotFields("Nome Aluno").Orientation = xlHidden
    ActiveSheet.PivotTables("Tabela dinâmica3").PivotFields("Final").Orientation = xlHidden
End Sub

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 19/05/2016 1:50 pm
(@manojointz)
Posts: 13
Active Member
Topic starter
 

Agradeço mas,

Este arquivo é só de exemplo. Na prática é um arquivo muito mais complexo, que irá para o cliente e deve ser automático. Este código não me ajuda...

 
Postado : 19/05/2016 1:52 pm
(@mprudencio)
Posts: 2749
Famed Member
 

O exemplo deve sr identico ao original, em estrutura e formato..

Nao entendi ainda pq nao retirar os rotulos da TD manualmente.

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 19/05/2016 2:13 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Sub ConformeIndiquei()
'Fonte: http://www.databison.com/pivot-table-vba-vba-to-read-modify-a-pivot-table-in-excel/
    For Each pvt In ActiveSheet.PivotTables
        For Each pvtfld In pvt.PivotFields
            pvtfld.Orientation = xlHidden
        Next pvtfld
    Next pvt
    
'Aqui reinsira os campos nos rótulos desejados
    
End Sub

Att

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 19/05/2016 2:15 pm
(@mprudencio)
Posts: 2749
Famed Member
 

Como o exemplo é igual ao original vc vai precisar ajustar


Sub LimparRotulo()

Dim WS As Worksheet


Set WS = Sheets("Plan1")

 With WS.PivotTables("Tabela dinâmica3")
 
 .PivotFields("Nome Aluno").Orientation = xlHidden
 .PivotFields("Final").Orientation = xlHidden
 
 End With

End Sub

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 19/05/2016 2:23 pm
(@manojointz)
Posts: 13
Active Member
Topic starter
 

Esse código não me ajuda,

Ele retira o filtro também, eu gostaria de um código que apenas retire o rótulo de linha.

 
Postado : 19/05/2016 2:27 pm
(@manojointz)
Posts: 13
Active Member
Topic starter
 

Este código não me ajuda, ele também retira os filtros.

Gostaria de um código que retirasse apenas o rotulo de linha da tabela dinamica.

Att,

 
Postado : 19/05/2016 2:28 pm
(@manojointz)
Posts: 13
Active Member
Topic starter
 

Este código nao me ajuda, ele retira todos os campos.

Gostaria de um código que retirasse apenas os campos do rotulo de linha da tabela dinamica.

Att,

 
Postado : 19/05/2016 2:29 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Já tentou algo assim

Sub ConformeIndiquei()
'Fonte: http://www.databison.com/pivot-table-vba-vba-to-read-modify-a-pivot-table-in-excel/
    For Each pvt In ActiveSheet.PivotTables
        For Each pvtfld In pvt.PivotFields
            pvtfld.Orientation = xlHidden
        Next pvtfld
    Next pvt
    
'Aqui reinsira os campos nos rótulos desejados
ActiveSheet.PivotTables("Tabela dinâmica3").AddDataField ActiveSheet. _
        PivotTables("Tabela dinâmica3").PivotFields("Nota"), "Contagem de Nota", _
        xlCount
    ActiveSheet.PivotTables("Tabela dinâmica3").AddDataField ActiveSheet. _
        PivotTables("Tabela dinâmica3").PivotFields("Nota 2"), "Contagem de Nota 2", _
        xlCount
    With ActiveSheet.PivotTables("Tabela dinâmica3").PivotFields("Contagem de Nota" _
        )
        .Caption = "Média de Nota"
        .Function = xlAverage
    End With
    With ActiveSheet.PivotTables("Tabela dinâmica3").PivotFields( _
        "Contagem de Nota 2")
        .Caption = "Média de Nota 2"
        .Function = xlAverage
    End With
End Sub

Att

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 19/05/2016 2:37 pm
Página 1 / 2