Página 1 de 1

Consolidar planilhas.

Enviado: 16 Jun 2020 às 05:35
por karinasda
Bom dia gente,

A cada dia tenho uma planilha nova referente a data com valores tipo Qnt peças em atraso, valor do Stock, entre outros.
Eu queria criar um dashboard com essas planilhas para que seja mais facil ver a evolução das coisa.
Para isso, estou tentando primeiro juntar todos os arquivos em um unico arquivo excel para poder depois criar uma tabela denâmica.
Tentei por esse codigo, mas não funciona, quando coloco para funcionar abre a o primeiro arquivo da lista:

'UnificarPlanilhas Macro
Sub lsUnificarPlanilhas()
On Error GoTo Sair

Dim lUltimaColunaAtiva As Long
Dim lUltimaLinhaAtiva As Long
Dim lRng As Range
Dim sPath As String
Dim fName As String
Dim lNomeWB As String
Dim lIPlan As Integer
Dim lUltimaLinhaPlanDestino As Long

PlanilhaDestino = ThisWorkbook.Name

sPath = Localizar_Caminho

sName = Dir(sPath & "\*.xls*")

Application.ScreenUpdating = False
Application.EnableEvents = False
Application.Calculation = xlCalculationManual

Do While sName <> ""
fName = sPath & "\" & sName
Workbooks.Open Filename:=fName, UpdateLinks:=False

lNomeWB = ActiveWorkbook.Name

For lIPlan = 1 To ActiveWorkbook.Sheets.Count
Workbooks(lNomeWB).Worksheets(lIPlan).Activate

lUltimaLinhaAtiva = Cells(Rows.Count, 1).End(xlUp).Row
lUltimaColunaAtiva = ActiveSheet.Cells(1, 5000).End(xlToLeft).Column

Set lRng = Range(Cells(1, lUltimaColunaAtiva).Address)

Range("A" & 1 & ":" & gfLetraColuna(lRng) & lUltimaLinhaAtiva).Select
Selection.Copy

Workbooks(PlanilhaDestino).Worksheets(1).Activate

lUltimaLinhaPlanDestino = Cells(Rows.Count, 1).End(xlUp).Row

If lUltimaLinhaPlanDestino > 1 Then
lUltimaLinhaPlanDestino = Cells(Rows.Count, 1).End(xlUp).Row + 1
End If

Range("A" & lUltimaLinhaPlanDestino).Select

ActiveSheet.Paste
Application.CutCopyMode = False
Next lIPlan

Workbooks(lNomeWB).Close SaveChanges:=False
sName = Dir()
Loop

MsgBox "Planilhas unificadas!"

Sair:
Application.ScreenUpdating = True
Application.EnableEvents = True
Application.Calculation = xlCalculationAutomatic
End Sub

Alguem sabe qual pode ser o problema? Ou tem alguma outra sugestão de como posso fazer para juntar essas planilhas?

Obrigada.

Re: Consolidar planilhas.

Enviado: 16 Jun 2020 às 06:57
por babdallas
Eu usaria o PowerQuery (Excel 2010 ou superior). Veja:

https://www.minhasplanilhas.com.br/impo ... -power-bi/