Páginas

sábado, 20 de fevereiro de 2010

Listando Arquivos ou Diretórios

Algumas vezes, precisamos criar Ferramentas em VBA, nas quais é necessário listar os arquivos ou pastas em determinado drive da máquina. Podemos realizar esta tarefa usando o Scripting RunTime, ou mesmo o Shell, porém existe um recurso nativo que permite obter o mesmo resultado.
No exemplo a seguir são retornados todos os arquivos Excel na pasta D:\Projetos

Sub ListarArquivos()

'Desenvolvida por Bruno Leite
'bruno_silva_leite@yahoo.com.br

Dim Files As Variant

Files = Dir("D:\Projetos\*.xls*", vbArchive) 

 While Files <> vbnullstring
  Debug.Print Files 
  Files = Dir(, vbArchive) 
 Wend

End Sub 




Com ela também é possível retornar as pastas, basta usar vbDirectory, ao invés de vbArchive, ou usar filtros com o nome de arquivo.
Por exemplo usando

 Files = Dir("D:\Projetos\B*.xls*", vbArchive)

Serão retornado todos os arquivos Excel que começam com a letra B.

Bom é isto ai, até uma próxima!

Bruno Leite Office developer

6 comentários:

RAJ disse...

Excelente rotina, parabéns.

Unknown disse...

Se precisar que apareça numa célula esse valor?

Bruno Leite disse...

Em uma célula? e se for mais que um arquivo?
Para que apareça em uma célula você precisa transformar esta SUB em um FUNCTION e usá-la na célula assim =ListarArquivos

Unknown disse...

Parabens! Ajudou muito!

Unknown disse...

Onde aparece os nomes dos arquivos? Como faz para aparecer nas linhas do excel?

Att

Unknown disse...

Parabéns pela simplicidade e eficiência !

Postar um comentário

Related Posts Plugin for WordPress, Blogger...