MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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


3 participantes

    [Resolvido]erro no código para backup

    Tobiasfranca
    Tobiasfranca
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 08/05/2013

    [Resolvido]erro no código para backup Empty [Resolvido]erro no código para backup

    Mensagem  Tobiasfranca 17/7/2014, 01:18

    Boa noite!!
    Estou colocando uma funcionalidade no meu bd para que todas as vezes que o usuário sair do sistema o mesmo pergunte se ele deseja realizar o backup, não sou experiente com vb portanto aproveitei alguns códigos que encontrei no fórum, acontece que quando o usuário clica na opção para realizar o backup aparece uma mensagem de erro: "caminho não encontrado". como não sou experiente no assunto peço ajuda para encontrar o erro no meu código, segue abaixo:


    Private Sub bt_sair_Click()
    If MsgBox("Deseja realmente sair do sistema?", vbYesNo, "Confirmação") = vbYes Then
    If MsgBox("Gostaria de fazer o backup antes de sair?", vbYesNo, "ATENÇÃO...") = vbYes Then
    'comando para backup
    Dim source As String
    Dim destine As String
    Dim fso As Variant

    source = "c:\access"
    destine = "c:\backup\access"

    Set fso = CreateObject("Scripting.FileSystemObject")
    yearstr = Year(Date)
    monthstr = Month(Date)
    daystr = Day(Date)
    If monthstr < 10 Then
    monthstr = "0" & monthstr
    End If
    If daystr < 10 Then
    daystr = "0" & daystr
    End If
    destine = destine & yearstr & monthstr & daystr
    fso.CopyFolder source, destine, True
    Set fso = Nothing
    MsgBox "Backup realizado com sucesso."

    Else
    DoCmd.Quit

    End If
    End If
    End Sub

    o depurador sempre seleciona a seguinte linha como erro: "fso.CopyFolder source, destine, True"

    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4140
    Registrado : 29/06/2012

    [Resolvido]erro no código para backup Empty Re: [Resolvido]erro no código para backup

    Mensagem  Noobezinho 17/7/2014, 02:03

    Olá Tobias


    Aqui:

    source = "c:\access"  ' Aqui você deve colocar o caminho até a tua aplicação, inclusive o nome dela.(exemplo: C:\pasta\pasta\aplicação.mdb)
    destine = "c:\backup\access" ' aqui você deve definira a pasta de destino com o nome que deseja para o arquivo de backup.

    Abs

    Noob


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    Tobiasfranca
    Tobiasfranca
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 08/05/2013

    [Resolvido]erro no código para backup Empty Re: [Resolvido]erro no código para backup

    Mensagem  Tobiasfranca 17/7/2014, 09:54


    Obrigado pela ajuda, fiz as alterações no código, porém o mesmo erro continua, agora ficou assim:

    source = "C:\Users\Faturamento\Google Drive\RPA - Access\RPA.accdb"
    destine = "C:\Users\Faturamento\Google Drive\backup\RPA.accdb"

    a linha de comando com erro é a seguinte: "fso.CopyFolder source, destine, True"

    Tobias
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    [Resolvido]erro no código para backup Empty Re: [Resolvido]erro no código para backup

    Mensagem  Alvaro Teixeira 17/7/2014, 11:29

    Olá a todos,

    Qual é o código e descrição do erro?

    Este código está no ficheiro "C:\Users\Faturamento\Google Drive\RPA - Access\RPA.accdb" ?

    Abraço
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4140
    Registrado : 29/06/2012

    [Resolvido]erro no código para backup Empty Re: [Resolvido]erro no código para backup

    Mensagem  Noobezinho 17/7/2014, 12:53

    Tobias

    Eu fiz uma revisão no código e vi o que ainda estava errado.
    Inclusive inverti a forma que irá ser gravado o arquivo de backup.
    Ele deve gravar o arquivo assim:
    RPA_Dia_Mês_Ano.accdb

    Para evitar erros de digitação, copie e cole todo o código abaixo.

    Código:

    Private Sub bt_sair_Click()
    If MsgBox("Deseja realmente sair do sistema?", vbYesNo, "Confirmação") = vbYes Then
       If MsgBox("Gostaria de fazer o backup antes de sair?", vbYesNo, "ATENÇÃO...") = vbYes Then
          'comando para backup
          Dim source As String
          Dim destine As String
          Dim fso As Variant

          source = "C:\Users\Faturamento\Google Drive\RPA - Access\RPA.accdb"
          destine = "C:\Users\Faturamento\Google Drive\backup\RPA"

          Set fso = CreateObject("Scripting.FileSystemObject")
          yearstr = Year(Date)
          monthstr = Month(Date)
          daystr = Day(Date)
          If monthstr < 10 Then
             monthstr = "0" & monthstr
          End If
          If daystr < 10 Then
             daystr = "0" & daystr
          End If
          destine = destine &_& daystr &_& monthstr &_ & yearstr & ".accdb"
          fso.CopyFolder source, destine, True
          Set fso = Nothing
          MsgBox "Backup realizado com sucesso."
       Else
          DoCmd.Quit

       End If
    End If
    End Sub


    Teste, se der erro, diga a linha, o código do erro e a descrição dele

    Noob


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    Tobiasfranca
    Tobiasfranca
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 08/05/2013

    [Resolvido]erro no código para backup Empty Re: [Resolvido]erro no código para backup

    Mensagem  Tobiasfranca 17/7/2014, 13:08

    Agora o erro foi diferente: "Erro de sintaxe"

    Private Sub bt_sair_Click()
    If MsgBox("Deseja realmente sair do sistema?", vbYesNo, "Confirmação") = vbYes Then
      If MsgBox("Gostaria de fazer o backup antes de sair?", vbYesNo, "ATENÇÃO...") = vbYes Then
         'comando para backup
         Dim source As String
         Dim destine As String
         Dim fso As Variant

         source = "C:\Users\Faturamento\Google Drive\RPA - Access\RPA.accdb"
         destine = "C:\Users\Faturamento\Google Drive\backup\RPA"

         Set fso = CreateObject("Scripting.FileSystemObject")
         yearstr = Year(Date)
         monthstr = Month(Date)
         daystr = Day(Date)
         If monthstr < 10 Then
            monthstr = "0" & monthstr
         End If
         If daystr < 10 Then
            daystr = "0" & daystr
         End If
         destine = destine &_& daystr &_& monthstr &_ & yearstr & ".accdb"
         fso.CopyFolder source, destine, True
         Set fso = Nothing
         MsgBox "Backup realizado com sucesso."
      Else
         DoCmd.Quit

      End If
    End If
    End Sub
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4140
    Registrado : 29/06/2012

    [Resolvido]erro no código para backup Empty Re: [Resolvido]erro no código para backup

    Mensagem  Noobezinho 17/7/2014, 13:21

    É verdade, ainda estou dormindo  Crying or Very sad 


    destine = destine & "_" & daystr & "_" & monthstr & " _" & yearstr & ".accdb"

    Pronto

    Agora vai !

    Noob


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    Tobiasfranca
    Tobiasfranca
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 08/05/2013

    [Resolvido]erro no código para backup Empty Re: [Resolvido]erro no código para backup

    Mensagem  Tobiasfranca 17/7/2014, 13:45

    Acho que ja estou sendo chato com isso, mas esse erro persiste.

    Erro em tempo de execução '76'.
    Caminho não localizado.

    fso.CopyFolder source, destine, True (depurador)

    já verifiquei e os arquivos e pastas estão no local correto. Sera que esse erro ocorre pelo fato do banco estar aberto no momento de executar o código?
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4140
    Registrado : 29/06/2012

    [Resolvido]erro no código para backup Empty Re: [Resolvido]erro no código para backup

    Mensagem  Noobezinho 17/7/2014, 14:51

    É provável

    Vou fazer um teste aqui e retorno.

    Noob


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4140
    Registrado : 29/06/2012

    [Resolvido]erro no código para backup Empty Re: [Resolvido]erro no código para backup

    Mensagem  Noobezinho 17/7/2014, 15:43

    Tobias

    Primeiro: Esse código não está legal
    Segundo: Verifique se a pasta RPA - Access tem esses espaços, cuidado com isso
    Terceiro: Mudei o código, veja que só deixei as frases em verde (vai ve-las quando copiar para o Access) só para ver
    o que mudei, então pode tirar-las.

    O backup é feito  na linha FileCopy source, destine

    Você não vai conseguir copiar do mesmo programa que está aberto.

    Código:


    If MsgBox("Deseja realmente sair do sistema?", vbYesNo, "Confirmação") = vbYes Then
       If MsgBox("Gostaria de fazer o backup antes de sair?", vbYesNo, "ATENÇÃO...") = vbYes Then
          'comando para backup
          Dim source As String
          Dim destine As String
          Dim fso As Variant
          
          source = "C:\Users\Faturamento\Google Drive\RPA - Access\RPA.accdb"
          destine = "C:\Users\Faturamento\Google Drive\backup\RPA"
          
          'Set fso = CreateObject("Scripting.FileSystemObject")
          yearstr = Year(Date)
          monthstr = Month(Date)
          daystr = Day(Date)
          If monthstr < 10 Then
             monthstr = "0" & monthstr
          End If
          If daystr < 10 Then
             daystr = "0" & daystr
          End If
          destine = destine & "_" & daystr & "_" & monthstr & " _" & yearstr & ".mdb"
          'fso.CopyFolder source, destine, True
          'Set fso = Nothing
            FileCopy source, destine
          MsgBox "Backup realizado com sucesso."
       Else
          DoCmd.Quit

       End If
    End If

    Só mais duas coisas, melhor colocar o backup ao iniciar o programa e forçar o backup.
    Porque ninguém vai querer fazer backup ao terminar o programa (Estão loucos pra ir embora, nesse caso, Twisted Evil )
    Backup no mesmo pc não é backup, somente é backup quando é feito em outro local fora do pc.

    Noob


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4140
    Registrado : 29/06/2012

    [Resolvido]erro no código para backup Empty Re: [Resolvido]erro no código para backup

    Mensagem  Noobezinho 19/7/2014, 11:59

    Como ficamos Tobias?

    Noob


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    Tobiasfranca
    Tobiasfranca
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 08/05/2013

    [Resolvido]erro no código para backup Empty Re: [Resolvido]erro no código para backup

    Mensagem  Tobiasfranca 13/8/2014, 13:45

    Obrigado.

    Conteúdo patrocinado


    [Resolvido]erro no código para backup Empty Re: [Resolvido]erro no código para backup

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 21/11/2024, 21:12