Foto de Joao S.
Joao há 1 ano
Enviada pelo
Site

Erro nao compreendido

Preciso abrir o arquivo txt mais recente de um diretorio...  nao consegui entender porque o codigo abaixo da sempre erro.


Sub arquivo()
foldername = "G:\Meu Drive\Fechamento" & Application.PathSeparator
fname = Dir(foldername & "*txt")
foldername = foldername & fname
'fname = Dir(FolderName & "*xlsm")
wookbooks.Open foldername
End Sub

Algoritmos
1 resposta
Professor Rafael R.
Respondeu há 1 ano
Contatar Rafael
Erro ao abrir o arquivo TXT mais recente

O código apresentado pode apresentar erros por alguns motivos:

1. Erro de sintaxe:

  • A linha wookbooks.Open foldername está usando a palavra-chave "wookbooks" incorretamente. A palavra-chave correta é "Workbooks".

2. Arquivo não encontrado:

  • A função Dir procura apenas o primeiro arquivo que corresponde ao padrão especificado. Se não houver nenhum arquivo TXT no diretório, fname será uma string vazia e o código falhará ao abrir o arquivo.

3. Permissões de arquivo:

  • Certifique-se de que você tem permissão para abrir arquivos no diretório especificado.

Solução:

1. Corrigir a sintaxe:

Altere a linha wookbooks.Open foldername para:

VBA
Workbooks.Open foldername

2. Verificar se o arquivo existe:

Use um loop para iterar por todos os arquivos TXT no diretório e abrir o mais recente:

VBA
Sub AbrirArquivoTxtMaisRecente()
    Dim foldername As String
    Dim fname As String
    Dim f As File
    
    foldername = "G:\Meu Drive\Fechamento" & Application.PathSeparator
    
    Set f = Dir(foldername & "*.txt")
    
    Do While f <> ""
        If f > fname Then
            fname = f
        End If
        Set f = Dir
    Loop
    
    If fname <> "" Then
        Workbooks.Open foldername & fname
    Else
        MsgBox "Nenhum arquivo TXT encontrado no diretório."
    End If
End Sub

3. Verificar as permissões de arquivo:

  • Se o erro persistir, verifique se você tem permissão para abrir arquivos no diretório especificado.

Observações:

  • O código acima usa a função Dir para iterar por todos os arquivos TXT no diretório.
  • A variável fname armazena o nome do arquivo TXT mais recente.
  • O método Workbooks.Open abre o arquivo TXT mais recente.

 

Espero que isso ajude!

Um professor já respondeu

Envie você também uma dúvida grátis
Ver resposta

Envie sua pergunta

Aprenda do seu jeito, no seu ritmo

Minerva IA
do Profes
Respostas na hora
100% no WhatsApp
Envie suas dúvidas pelo App
Escaneie o QR Code para baixar