Ir para conteúdo
Fórum Script Brasil
  • 0

Como listar todas as planilhas de uma pasta de excel no VBA


Lobregat

Pergunta

Srs,

Preciso de uma ajuda.

Preciso listar e armazenar (em um array) todas as planilhas de uma pasta de excel, seria facil se a pasta todos os dias tivesse as planilhas com o mesmo nome, mas a cada dia pode não ter alguma das planilhas, exemplo: hoje a pasta possui as planilhas SP, RJ, ES, BA; amanhã poderá ter SP, RJ, PR, PA, ETC; em outro dia RJ, ES, BA, PA, AM....

Sei que a pasta terá no máximo 27 planilhas, mas não quero fazer uma função para verificar se a planilha existe.

Desde já agradeço.

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

já tive um problema parecido e achei na net o codigo abaixo,

Sub Inicio()

Columns("A:A").ClearContents

linha = 1

Call Varre("C:\Documents and Settings\administrador\Desktop\temp")

End Sub

Public Function Varre(endereço)

Set FSO = CreateObject("Scripting.FileSystemObject")

Set aqui = FSO.GetFolder(endereço)

For Each Arquivo In aqui.Files

Aux1 = Len(Arquivo.Path) - InStr(1, StrReverse(Arquivo.Path), "\")

Range("A" & linha).Value = Mid(Arquivo.Path, 1, Aux1 + 1)

Range("A" & linha).Value = Arquivo.Name

Range("B" & linha).Value = Arquivo.Size

linha = linha + 1

Next

For Each Pasta In aqui.SubFolders

Varre (Pasta.Path)

Next

End Function

no seu caso é só adaptar o codigo para jogar o arquivo na matriz e não na planilha.

Link para o comentário
Compartilhar em outros sites

  • 0

Tente isto:

Dim numPlanilhas as Integer
Dim contador as Integer

numPlanilhas = Workbooks("NomePastaTrabalho.xls").Worksheets.Count
Dim arrayPlanilhas(numPlanilhas - 1) As String

For contador = 1 To Workbooks("NomePastaTrabalho.xls").Worksheets.Count

     arrayPlanilhas(contador - 1) = Workbooks("NomePastaTrabalho.xls").Worksheets(contador).Name

Next contador

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...