Meus queridos! Na
última lição, aprendemos a gerar uma árvore com todos os arquivos de um
determinado diretório. Talvez você tenha se perguntado: pra que fizemos isto
sô? Calma, eu respondo!!!
Repisando
a velha história de precisar manipular muitos arquivos, talvez você não queira
abrir todos e especificar quais devem ser abertos.
Sendo
assim, no próximo código, vamos dizer quais queremos, ok?
Na
mesma planilha que geramos a árvore, vamos trazer na coluna “D” o valor total
das vendas. Na coluna “E”, vamos colocar a palavra abrir, para todas as que
queremos extrair o total.
A
ideia é simples, assim que rodarmos a macro, os arquivos que serão abertos
estão determinamos na coluna “E”.
Veja
como o código é simples!
Sub TotalFiliaisArvore()
|
Dim NomArq 'declaramos
a variável que receberá o nome do arquivo que será aberto
|
Set ShtArv = Sheets("Árvore") 'declaramos a planilha que
receberá os dados
|
Lin = 2
|
Do While ShtArv.Cells(Lin, 1) <> "" 'agora percorremos todos os arquivos
no diretório à procura do que nos interessa
|
If ThisWorkbook.Sheets("Árvore").Cells(Lin, 5) =
"Abrir" Then
|
Workbooks.Open ShtArv.Cells(Lin, 2) 'se acharmos, vamos abri-lo.
Perceba que agora estamos abrindo pelo endereço que geramos na árvore
|
NomArq =
ActiveWorkbook.Name 'captura o
nome do arquivo
|
'Após
abri-lo, precisamos pegar a informação que queremos e tranferí-la para o
nosso relatório.
|
With
ThisWorkbook.Sheets("Árvore")
|
.Cells(Lin, 4) =
ActiveWorkbook.ActiveSheet.Range("B2") 'e
finalmente, o valor
|
End With
|
Workbooks(NomArq).Close
'fechamos o arquivo, pois já pegamos a informação que
queriamos
|
End If
|
Lin = Lin + 1 'incremente
a linha para abrirmos o próximo arquivo
|
Loop
|
End Sub
|
Ao
rodar o código teremos!
Veja!
Somente os valores requeridos foram trazidos. Mão na roda não é?!!!
Nenhum comentário:
Postar um comentário