Veja como criar uma tabela dinâmica no MS Excel (versão 2007). Especialmente útil quando você cria um relatório personalizado todos os dias. Você pode otimizar a criação da tabela dinâmica da seguinte maneira:
Sub PivotTableForExcel2007()
Dim SourceRange As Range
' Define o intervalo de origem dos dados para a Tabela Dinâmica
Set SourceRange = Sheets("Sheet1").Range("A3:N86")
' Cria uma Tabela Dinâmica a partir do intervalo de origem
ActiveWorkbook.PivotCaches.Create( _
SourceType:=xlDatabase, _ ' Define o tipo de origem como banco de dados (intervalo)
SourceData:=SourceRange, _ ' Define o intervalo de origem dos dados
Version:=xlPivotTableVersion12).CreatePivotTable _ ' Versão específica para Excel 2007
TableDestination:="", _ ' Define o destino da Tabela Dinâmica (atualmente vazio, precisa ser especificado)
TableName:="", _ ' Define o nome da Tabela Dinâmica (atualmente vazio, precisa ser especificado)
DefaultVersion:=xlPivotTableVersion12
End Sub
Versão Avançada
Sub CreatePivotTable()
Dim wsSource As Worksheet
Dim wsDest As Worksheet
Dim SourceRange As Range
Dim pivotTable As PivotTable
Dim pivotCache As PivotCache
Dim destCell As Range
' Definir as planilhas de origem e destino
Set wsSource = ThisWorkbook.Sheets("Sheet1")
Set wsDest = ThisWorkbook.Sheets.Add(After:=wsSource) ' Adiciona uma nova planilha após a planilha de origem
' Definir o intervalo de origem dos dados para a Tabela Dinâmica
Set SourceRange = wsSource.Range("A3:N86")
' Definir a célula de destino para a Tabela Dinâmica na nova planilha
Set destCell = wsDest.Cells(1, 1)
' Criar um cache de Tabela Dinâmica a partir do intervalo de origem
Set pivotCache = ThisWorkbook.PivotCaches.Create( _
SourceType:=xlDatabase, _
SourceData:=SourceRange, _
Version:=xlPivotTableVersion12)
' Criar a Tabela Dinâmica usando o cache criado
Set pivotTable = pivotCache.CreatePivotTable( _
TableDestination:=destCell, _
TableName:="SalesPivotTable", _
DefaultVersion:=xlPivotTableVersion12)
' Exemplo de configuração adicional da Tabela Dinâmica
With pivotTable
.PivotFields("Product").Orientation = xlRowField ' Configura o campo "Product" como rótulo de linha
.PivotFields("Sales").Orientation = xlDataField ' Configura o campo "Sales" como valor
.PivotFields("Region").Orientation = xlColumnField ' Configura o campo "Region" como rótulo de coluna
End With
' Ajuste automático das colunas da Tabela Dinâmica
wsDest.Columns.AutoFit
End Sub
Comentários e Melhorias:
1. Planilha de Destino: Adicionei uma nova planilha para onde a Tabela Dinâmica será criada, em vez de deixá-la sem especificação. Isso evita que a Tabela Dinâmica seja criada em locais indesejados.
2. Nome da Tabela: Defini um nome significativo para a Tabela Dinâmica (`SalesPivotTable`), o que é uma boa prática para facilitar o gerenciamento e identificação.
3. Configuração da Tabela Dinâmica: Incluí uma configuração básica para os campos da Tabela Dinâmica (`Product`, `Sales`, `Region`) como exemplo. Isso pode ser personalizado conforme necessário.
4. Ajuste de Colunas: Adicionei um ajuste automático de colunas após a criação da Tabela Dinâmica para melhorar a apresentação dos dados.
Exemplos de Uso:
1. Análise de Vendas: O código pode ser usado para criar uma Tabela Dinâmica que analisa as vendas por produto e região, permitindo uma visualização rápida e fácil das tendências de vendas.
2. Relatório de Desempenho: Em um ambiente corporativo, o código pode ser usado para gerar relatórios de desempenho, como o acompanhamento de KPIs (Key Performance Indicators) em diferentes departamentos ou períodos.
3. Consolidação de Dados Financeiros: O código é útil para consolidar dados financeiros de diferentes fontes, como receitas e despesas, e fornecer uma visão consolidada e detalhada das finanças da empresa.Parabéns! Como você ainda está lendo isso, você está realmente interessado em aprender VBA. Como você já viu, a linguagem de programação VBA é extremamente útil e pode nos poupar muito tempo. Espero que você tenha achado essas informações úteis e as use para se tornar um mestre em MS Excel, VBA e software de computador em geral.
Clique aqui e nos contate via What's App para avaliarmos seus projetos
Nenhum comentário:
Postar um comentário