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]Comprimir Pasta e Subpastas

    Assis
    Assis
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4772
    Registrado : 06/11/2009

    [Resolvido]Comprimir Pasta e Subpastas Empty [Resolvido]Comprimir Pasta e Subpastas

    Mensagem  Assis 11/8/2014, 23:43

    Boa noite amigos

    Com o comando abaixo comprimo com Winrar a BD. Mas junto da BD tem outras subpastas.
    Como as incluir neste comando
    Obrigado

    Sub ComprimePastaComWinRar()
    Dim FSO As Object
    Dim FromPath As String
    Dim ToPath As String
    Dim WinRarPath As String 'Localização do WinRar.exe
    Dim RarIt As String 'Instrução de linha de comando
    Dim SourceDir As String 'O diretório de origem
    Dim DestDir As String 'O diretório de destino
    Dim DestRarName As String
    Dim Dest As String 'Caminho de destino concatenado

    FromPath = Me!CaminhoEscolhido

    ToPath = Me!CaminhoEscolhido

    'inicia a criação da pasta
    Set fs = CreateObject("Scripting.FileSystemObject")
    'se a pasta existir, deleta

    If Right(FromPath, 1) = "\" Then
    FromPath = Left(FromPath, Len(FromPath) - 1)
    End If
    If Right(ToPath, 1) = "\" Then
    ToPath = Left(ToPath, Len(ToPath) - 1)
    End If
    Set FSO = CreateObject("scripting.filesystemobject")
    If FSO.FolderExists(FromPath) = False Then
    MsgBox FromPath & " não existe."
    Exit Sub
    End If
    'copia
    FSO.CopyFolder Source:=FromPath, Destination:=ToPath

    '*** Verifica se existe instalação do WinRar ***
    WinRarPath = "C:\Program Files (x86)\WinRar\"

    If Dir(WinRarPath, vbDirectory) = "" Then
    MsgBox "O WinRar não está instaldo nesse diretorio." _
    & Chr$(13) & "Impossivel comprimir."
    Exit Sub
    End If

    SourceDir = Me.CaminhoEscolhido

    'Verifica se a Pasta tem espaços nos nomes
    If InStr(1, SourceDir, " ", vbTextCompare) <> 0 Then SourceDir = Chr(34) & SourceDir & Chr(34)

    'Letra do Drive de destino
    DestDir = Me.CaminhoEscolhido

    If Dir(DestDir, vbDirectory) = "" Then MkDir DestDir
    DestRarName = "Backup.Rar"
    Dest = DestDir & "\" & DestRarName
    If InStr(1, Dest, " ", vbTextCompare) <> 0 Then Dest = Chr(34) & Dest & Chr(34)

    RarIt = shell(WinRarPath & "WinRar.exe a " & Dest & " " & SourceDir, vbNormalFocus)
    MsgBox "Backup criado com sucesso...", vbInformation, "Aviso"

    DoCmd.Quit
    End Sub


    .................................................................................
    *** Só sei que nada sei ***
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8499
    Registrado : 05/11/2009

    [Resolvido]Comprimir Pasta e Subpastas Empty Re: [Resolvido]Comprimir Pasta e Subpastas

    Mensagem  Alexandre Neves 12/8/2014, 07:34

    Bom dia, Assis
    Transforma esse procedimento em função. Depois, é listar pasta com sub-pastas e, em cada instância, executar a função


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    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]Comprimir Pasta e Subpastas Empty Re: [Resolvido]Comprimir Pasta e Subpastas

    Mensagem  Alvaro Teixeira 12/8/2014, 08:26

    Bom Dia,
    Não sei se o parametro -r do WinRAR pode ajudar.
    Ficando assim no código:

    RarIt = shell(WinRarPath & "WinRar.exe a -r " & Dest & " " & SourceDir, vbNormalFocus)


    Verifique estes links:
    http://acritum.com/software/manuals/winrar/html/helpswr.htm
    http://www.ihler.org/Docs/compacta.html

    Abraço
    Assis
    Assis
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4772
    Registrado : 06/11/2009

    [Resolvido]Comprimir Pasta e Subpastas Empty Re: [Resolvido]Comprimir Pasta e Subpastas

    Mensagem  Assis 12/8/2014, 11:36

    Bom dia Alvaro

    Valioso este -r
    Obrigado


    .................................................................................
    *** Só sei que nada sei ***

    Conteúdo patrocinado


    [Resolvido]Comprimir Pasta e Subpastas Empty Re: [Resolvido]Comprimir Pasta e Subpastas

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 24/11/2024, 01:39