MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]FileCopy: Error 53' O arquivo não foi localizado

    Compartilhe

    biligo
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 181
    Registrado : 10/04/2014

    [Resolvido]FileCopy: Error 53' O arquivo não foi localizado

    Mensagem  biligo em Dom 07 Dez 2014, 09:00

    Boas pessoal,

    Estou tentando decifrar o porque da geração deste erro.
    Não importa o que eu coloque sempre me diz que não foi localizado o arquivo. dei uma procurada na net e esta é a síntese que me baseio:

    FileCopy "c:\teste\arq1.txt", "c:\windows\arq2.txt"
    Aqui o arquivo arq1.txt é copiado do diretório c:\teste para o diretório c:\windows com o nome de arq2.txt

    Este é o codigo ao qual estou utilizando:

    Dim ArquivoLocal, ArquivoFinal As String
       ArquivoLocal = SelecionarPasta
       MsgBox "Este é o local atual do arquivo: " & ArquivoLocal
       ArquivoFinal = Me.Caminho.value & "\" & SeparaNomes(x, "\", 1)
       MsgBox "Este é o local de gravação: " & ArquivoFinal
           
           FileCopy "ArquivoLocal", "ArquivoFinal"

    As mensagens me retornam exatamente os devidos locais do arquivo e destinos com o nome e extenção do arquivo.
    Se eu estiver fazendo alguma besteira por favor explicite-me.

    Obs.: Mesmo alterando os valores de (ArquivoLocal = "C:\teste.txt"; ArquivoFinal = "C:\Pasta\teste.txt") ainda me é gerado o mesmo erro

    criquio
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    Re: [Resolvido]FileCopy: Error 53' O arquivo não foi localizado

    Mensagem  criquio em Dom 07 Dez 2014, 13:16

    Tente retirando as aspas na linha FileCopy:

    Código:
    FileCopy ArquivoLocal, ArquivoFinal

    Usamos aspas em Strings. Nesse caso, você está usando variáveis. As Strings já foram passadas nas variáveis. Usaria-se as aspas se estivesse colocando os caminhos no lugar das variáveis:

    Código:
    FileCopy "c:\teste\arq1.txt", "c:\windows\arq2.txt"


    .................................................................................
    Meu novo site: [Você precisa estar registrado e conectado para ver este link.]

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.


    biligo
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 181
    Registrado : 10/04/2014

    Re: [Resolvido]FileCopy: Error 53' O arquivo não foi localizado

    Mensagem  biligo em Seg 08 Dez 2014, 10:25

    Boas Criquio,

    Muito obrigado, funcionou. Consigo pegar um arquivo e copiá-lo a outra pasta.
    Bom o objetivo do tópico já foi concluído mas gostaria de dar continuidade apenas com a seguinte questão:
    Com este método FileCopy é possível a mobilização de múltiplos arquivos? a caixa de dialogo que chama os arquivos que utilizo,
    foi disponibilizada pelo JPaulo e possui esta função, (posso selecionar vários arquivos) mas apenas o primeiro e enviado ao destino
    Dei uma procurada ontem mas o melhor que encontrei foi o seguinte, segue:

    Código:

    > Dim strDestinationFolder As String
    > Dim strSourceFolder As String
    > Dim strFile As String
    >
    > strDestinationFolder = "C:\Another Folder\"
    > strSourceFolder = "C:\My Data\"
    >
    > strFile = Dir$(strSourceFolder & "*.XLS")
    > Do While Len(strFile) > 0
    > FileCopy strSourceFolder & strFile, strDestinationFolder & strFile
    > strFile = Dir$()
    > Loop
    >
    >
    > --
    > Doug Steele, Microsoft Access MVP

    Tentei adaptar mas me é gerado erro.
    Base disponibilizada por JPaulo aqui no fórum.

    Código:
       
    Dim Fd As Object, z As String
            Set Fd = Application.FileDialog(1)
    With Fd
    .ButtonName = "Abrir"
    .Title = "Selecione as imagens referente ao cliente..."
    If .Show Then
        SelecionarPasta = .SelectedItems(1)
    LocalArq = SelecionarPasta
        DestinoArq = DestinoArq & "\"

            MsgBox "Este é o local destino do arquivo: " & DestinoArq 'Esta mensagem me é gerada com exito

        z = Dir$(LocalArq)
            Do While Len(z) > 0
                    MsgBox "Este é o local do arquivo: " & LocalArq & z 'Esta mensagem me aponta apenas o 1° arquivo selecionado e então me e gerado erro na próxima linha
            FileCopy LocalArq & z, DestinoArq & z 'Erro ;53:O arquivo não foi localizado
            z = Dir$()
            Loop
                                    
    End With
    Set Fd = Nothing

    criquio
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    Re: [Resolvido]FileCopy: Error 53' O arquivo não foi localizado

    Mensagem  criquio em Seg 08 Dez 2014, 13:01

    O FileOpen abre os arquivos selecionados em uma Array. O Do While já faz um Loop por esse arquivos retornados. Se inserir a rotina de copiar dentro do Loop, deve copiar todos.


    .................................................................................
    Meu novo site: [Você precisa estar registrado e conectado para ver este link.]

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.


    biligo
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 181
    Registrado : 10/04/2014

    Re: [Resolvido]FileCopy: Error 53' O arquivo não foi localizado

    Mensagem  biligo em Ter 09 Dez 2014, 20:43

    Boas,

    Criquio, tentei executar o que me instruiu, mas não obtive exito. A situação mais animadora que obtive foi a importação de varios arquivos, constrando que a maioria eu não havia selecionado
    e eles era exatamente o mesmo arquivo com nomes diferentes (o primeiro arquivo que selecionei ficou como padrão e os demais foram copiados com nomes diferentes de arquivos que estavam na mesma
    pasta). No momento atual consigo importar um arquivo mas os demais não.

    Código:

    Dim Fd As Object, x As Variant, z As String

    Set Fd = Application.FileDialog(1)
    With Fd

    .ButtonName = "Abrir"
    .Title = "Selecione o local onde se encontra o arquivo..."
    If .Show Then

    SelecionarPasta = .SelectedItems(1)
    x = SelecionarPasta

                LocalArq = Left(x, InStrRev(x, "\") + 0)    'Exemplo de retorno: "C:\Users\User\Pasta do Arquivo\"
               
        DestinoArq = DestinoArq & "\"                          'Exemplo de retorno: "C:\Users\User\Pasta de destino\"
           
    z = Dir$(x)
        Do While Len(z) > 0
            FileCopy LocalArq & z, DestinoArq & z
                z = Dir$()
                    Loop
    End If
        End With

    Creio que o "Loop" não esteja funcionando corretamente pois o x me é retornado com um unico valor, mas não consigo fazer com que o x
    me retorne vários valores.

    biligo
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 181
    Registrado : 10/04/2014

    Re: [Resolvido]FileCopy: Error 53' O arquivo não foi localizado

    Mensagem  biligo em Qua 10 Dez 2014, 09:42

    Boas,

    Após algumas horas de pesquisa descobri que o método que estava utilizando não é apropriado para efetuar este tipo de procedimento.
    Utilizando um For Each e mandando os itens selecionados diretamente para o Next me foi resolvida a questão.
    Não estava conseguindo justamente por isto, nomeando os arquivos como string apenas o 1° era guardado.

    criquio
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    Re: [Resolvido]FileCopy: Error 53' O arquivo não foi localizado

    Mensagem  criquio em Qua 10 Dez 2014, 12:09

    Agradecemos o retorno.


    .................................................................................
    Meu novo site: [Você precisa estar registrado e conectado para ver este link.]

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.


      Data/hora atual: Qui 08 Dez 2016, 23:55