Boa tarde, Estou com um problema para inserir uma tabela dinâmica e gostaria da ajuda de vocês. Tenho uma base em "Plan1" com 75 variáveis organizadas por colunas(75 colunas), e na primeira linha seus respectivos nomes Gostaria de inserir uma Tabela Dinâmica em "Plan2" que funcionasse para qualquer extensão de linha que eu tiver na base. Pois as vezes a base é grande(muitas linhas) as vezes é pequena. A princípio tentei fazer gravando. Funcionou durante um tempo, depois parou. Quero fazer uma agora sólida. Para não dar mais problema. Segue essa macro gravada. Ocorreu o erro '1004' nela. Sub FazTabela() ' FazTabela Macro ' Sheets("Plan2").Select ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _ "Plan1!R1C1:R65536C76", Version:=xlPivotTableVersion10).CreatePivotTable _ TableDestination:="Plan2!R1C1", TableName:="Tabela dinâmica1", _ DefaultVersion:=xlPivotTableVersion10 Sheets("Plan2").Select Cells(1, 1).Select End Sub Depois Tentei a seguinte programação: Sub CreatePivot() ' Dim WSD As Worksheet Dim PTCache As PivotCache Dim PT As PivotTable Dim PRange As Range Dim FinalRow As Long Set WSD = Worksheets("TabelaDinâmica") For Each PT In WSD.PivotTables PT.TableRange2.Clear Next PT FinalRow = WSD.Cells(Application.Rows.Count, 1).End(x1Up).Row FinalCol = WSD.Cells(1, Application.Columns.Count).End(x1ToLeft).Column Set PRange = WSD.Cells(1, 1).Resize(FinalRow, FinalCol) Set PTCache = ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:=PRange.Address) Set PT = PTCache.CreatePivotTable(TableDestination:=WSD.Cells(2, FinalCol + 2), TableName:="Tabela_dinamica1") PT.ManualUpdate = True PT.AddFields RowFields:=Array("idEmergencia", "Modalidad Viajem"), ColumnFields:="Transportadora" With PT.PivotFields("Produto 1") .Orientation = xlDataField .Function = xlSum .Position = 1 End With PT.ManualUpdate = False PT.ManualUpdate = True PT.ShowTableStyleRowStripes = True PT.TableStyle2 = "PivotStyleMedium10" WSD.Activate Range("J2").Select End Sub Muito obrigado!