Macros e VBA

Como criar uma Tabela Dinâmica com Macro VBA?

Se você precisa criar uma Tabela Dinâmica com Macro VBA, este artigo é para você. Para criar uma Tabela Dinâmica com Macro VBA, você pode seguir os seguintes passos:

  1. Abra o Excel e pressione "Alt + F11" para abrir o Editor VBA.
  2. No Editor VBA, clique com o botão direito do mouse na pasta de projetos e selecione "Inserir" -> "Módulo" para adicionar um novo módulo.
  3. No módulo recém-criado, escreva o código VBA para criar a Tabela Dinâmica:
Sub CriarTabelaDinamica()
    Dim ws As Worksheet
    Dim ptCache As PivotCache
    Dim pt As PivotTable
    Dim ptRange As Range
    Dim ptRowField As PivotField
    Dim ptDataField As PivotField

    ' Defina a planilha onde a Tabela Dinâmica será criada
    Set ws = ThisWorkbook.Sheets("Sheet1") ' Substitua "Sheet1" pelo nome da sua planilha

    ' Defina a faixa de dados para a Tabela Dinâmica
    Set ptRange = ws.Range("A1:D10") ' Substitua pela faixa de dados que você deseja usar

    ' Crie um cache para a Tabela Dinâmica
    Set ptCache = ThisWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:=ptRange)

    ' Adicione uma Tabela Dinâmica na planilha especificada
    Set pt = ptCache.CreatePivotTable(TableDestination:=ws.Range("F3"), TableName:="TabelaDinamica")

    ' Adicione os campos à Tabela Dinâmica
    Set ptRowField = pt.PivotFields("Nome") ' Substitua "Nome" pelo nome do campo que você deseja usar como linhas
    ptRowField.Orientation = xlRowField

    Set ptDataField = pt.PivotFields("Vendas") ' Substitua "Vendas" pelo nome do campo que você deseja usar como valores
    ptDataField.Orientation = xlDataField ' Nesse caso, estamos usando como valores

    ' Personalize outras configurações da Tabela Dinâmica, se necessário

    ' Atualize a Tabela Dinâmica
    pt.RefreshTable

    ' Opcional: Formate a Tabela Dinâmica conforme desejado
    ' (exemplo de formatação, você pode personalizar como preferir)
    pt.TableStyle2 = "PivotStyleMedium9"

End Sub
  1. Depois de escrever o código, feche o Editor VBA e retorne à planilha Excel.
  2. Para executar a macro e criar a Tabela Dinâmica, pressione "Alt + F8" para abrir a caixa de diálogo "Macro".
  3. Selecione a macro "CriarTabelaDinamica" na lista e clique em "Executar".

Lembre-se de personalizar o código VBA de acordo com sua necessidade, substituindo os nomes da planilha, faixa de dados e campos conforme sua planilha real.

Importante: Certifique-se de habilitar as macros no Excel para que a macro possa ser executada com sucesso. Para fazer isso, vá para "Arquivo" -> "Opções" -> "Central de Confiabilidade" -> "Configurações da Central de Confiabilidade" -> "Configurações de Macro" e selecione a opção "Habilitar todas as macros". Tenha cuidado ao habilitar macros de fontes não confiáveis, pois elas podem ser prejudiciais.

Conclusão:

No código acima, você precisará substituir "Sheet1" pelo nome real da planilha onde seus dados estão localizados e "A1:D10" pelo intervalo correto que contém seus dados.

Você também pode adicionar mais campos à Tabela Dinâmica, ajustando as linhas de código dentro do bloco "With tbl".

Após escrever o código VBA, você pode fechar o Editor VBA e voltar para a planilha do Excel.

Para executar a macro e criar a Tabela Dinâmica, vá para a guia "Developer" (Desenvolvedor) novamente e clique no botão "Macros". Selecione a macro "CriarTabelaDinamica" e clique em "Run" (Executar).

Com esses passos, você poderá criar uma Tabela Dinâmica usando uma macro VBA no Microsoft Excel.

Edivaldo

Edivaldo. Analista de funções e fórmulas de Excel, adoro fazer planilhas e compartilhar meus conhecimentos com as pessoas. Seja bem-vindo ao tudo Excel, onde você aprende de graça e tira suas dúvidas.

Deixe um comentário

Botão Voltar ao topo