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


+5
elemke
leon23
danielnfonseca
JPaulo
adriano944
9 participantes

    [Resolvido]Compactar arquivo pelo Access

    avatar
    adriano944
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 187
    Registrado : 10/02/2010

    [Resolvido]Compactar arquivo pelo Access Empty [Resolvido]Compactar arquivo pelo Access

    Mensagem  adriano944 26/5/2010, 15:10

    Pessoal

    Como posso compactar um arquivo pelo access?

    preciso compactar um arquivo no formato .zip que esta dentro do diretorio: "C:\ferramentas\critica caracteristicas\mail" e o nome do arquivoé: Relatorio Criticidade.xls

    Espero que alguem possa me ajudar!

    obrigado


    Última edição por adriano944 em 27/5/2010, 17:26, editado 1 vez(es)
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  JPaulo 26/5/2010, 16:02

    Cole este código (como está) num modulo novo e salve;

    http://dl.dropbox.com/u/771097/adriano.txt

    Para chamar a função basta colocar no evento ao pressionar de um botão;

    Call ZipaFicheiro


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Instruções SQL como utilizar...
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  JPaulo 26/5/2010, 16:08

    Atenção à referencia VBA "Microsoft Sripting Runtime" tem de estar marcada.


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Instruções SQL como utilizar...
    avatar
    adriano944
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 187
    Registrado : 10/02/2010

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  adriano944 26/5/2010, 16:15

    Ok JPaulo
    Vou testar aqui!

    Muito obrigado
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  JPaulo 27/5/2010, 14:43

    E ae funfou ?


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Instruções SQL como utilizar...
    avatar
    adriano944
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 187
    Registrado : 10/02/2010

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  adriano944 27/5/2010, 15:09

    Perfeitamente JPaulo!!!!

    Muito Obrigado mais uma vez!!!
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  JPaulo 27/5/2010, 15:20

    Obrigado pelo retorno amigo, é que é a primeira vez que esse código foi utilizado para zipar Excel.


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Instruções SQL como utilizar...
    avatar
    adriano944
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 187
    Registrado : 10/02/2010

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  adriano944 27/5/2010, 17:26

    E funcionou 100%..hehe

    vlw
    avatar
    danielnfonseca
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1
    Registrado : 13/07/2010

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  danielnfonseca 13/7/2010, 18:42

    comigo não funcionou.(access 2000)

    ele cria o arquivo .zip "FileNameZip" mas não insere o arquivo indicado em "FName". o Zip fica vazio
    leon23
    leon23
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4
    Registrado : 23/10/2010

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  leon23 28/10/2010, 03:30

    Boa noite,

    Eu utilizei o código e funcionou normalmente, porém ele trunca o nome do arquivo, caso contenha acentos.

    meu arquivo chama-se planilha não alterada.xls

    dentro do zip criado o arquivo fica com o nome planilha nço alterda.xls

    e dentro do meu sistema, o nome do arquivo é extremamente importante....


    Alguem sabe como adaptar o codigo para que ele aceite os acentos??? ou existe algo parecido que chame o winzip via windows (e nao zip por meio de codigo hex)???

    valeu

    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  JPaulo 28/10/2010, 10:43

    Pelos testes que fiz aqui, reproduzindo um ficheiro Excel com o mesmo nome que o seu, funfou com nota 10.

    Public Sub ZipaFicheiro()
    'Criado pelo meu amigo e colega Raw do Canadá
    'Adaptado por JPaulo ® Maximo Access

    Dim strDate As String, DefPath As String
    Dim oApp As Object
    Dim FName, FileNameZip
    Dim strPrefix As String
    On Error Resume Next
    DefPath = "C:\SuaPasta"'Local e pasta
    If Right(DefPath, 1) <> "" Then
    DefPath = DefPath & ""
    End If
    strDate = Format(Now, "dd-mmm-yy_h-mm-ss")
    FileNameZip = DefPath & strDate & ".zip"
    strPrefix = "planilha não alterada" 'Nome do ficheiro
    FName = "C:\SuaPasta" & strPrefix & ".xls"
    On Error Resume Next
    CriaNovoZip (FileNameZip)
    Set oApp = CreateObject("Shell.Application")
    oApp.NameSpace(FileNameZip).CopyHere FName
    MsgBox "Criado com Sucesso em: " & FileNameZip
    Set oApp = Nothing
    Exit Sub
    End Sub


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Instruções SQL como utilizar...
    leon23
    leon23
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4
    Registrado : 23/10/2010

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  leon23 28/10/2010, 12:57

    JPaulo, obrigado pela ajuda, mas se funcionou com vc, então o problema deve ser outro, pois comigo não funcionou.

    note que ele cria o zip na pasta, porém dentro do zip o nome é truncado


    [Resolvido]Compactar arquivo pelo Access Zips

    [Resolvido]Compactar arquivo pelo Access Pastak


    tem alguma ideia do que pode ser ????

    vou testar em outro computador para ver se funciona....
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  JPaulo 28/10/2010, 15:33

    Amigão o problema pode estar nas configurações desse PC mesmo ou nessa versão de ZIP.

    Veja que no meu, ficou joia;

    [Resolvido]Compactar arquivo pelo Access 28-10-201015-29-33


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Instruções SQL como utilizar...
    leon23
    leon23
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4
    Registrado : 23/10/2010

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  leon23 28/10/2010, 19:05

    tenho a impressao que o problema esta nos micros aqui do trabalho mesmo.... aqui usamos um programa que se chama ZIPCENTRAL, ao inves do tradicional WInZip.

    Quando eu chegar em casa testarei la pra ver se tenho melhor sorte....

    depois eu dou um retorno, mas de qualquer forma, obrigado pela ajuda.

    leon23
    leon23
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4
    Registrado : 23/10/2010

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  leon23 29/10/2010, 02:29

    JPaulo,

    Porvavelmente o problema é mesmo configuracao ou o fato de eu usar o tal ZIPCENTRAL no trabalho.

    aqui em casa (onde só tenho instalado o winace), funcionou normalmente.

    Vou instalar algum outro no trabalho e tentar novamente .....

    valeu !!!
    avatar
    elemke
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 18
    Registrado : 25/05/2010

    [Resolvido]Compactar arquivo pelo Access Empty Teste

    Mensagem  elemke 17/3/2011, 18:23

    Prezados,

    Realizei algumas modificações no código, conforme abaixo.
    Agora gostaria de resolver uma outra questão:
    No meu caso, o nome do arquivo muda todo o dia, permanecendo apenas "_carga_in.txt", assim sendo, preciso que a linha: Arquivo = "S:\Sistema\remessa\" & "20110317_101714_carga_in.txt" ficasse assim: Arquivo = "S:\Sistema\remessa\" & "*_carga_in.txt", porém, ao executar o código aparece erro dizendo que já existe um arquivo com essa nome.

    Alguém tem alguma idéia?

    OBS: Não existem outros arquivos na pasta.





    Public Sub ZipaFicheiro()
    'Criado pelo meu amigo e colega Raw do Canadá
    'Adaptado por JPaulo ® Maximo Access

    Dim oApp As Object
    Dim Arquivo, NomeZip
    On Error Resume Next

    NomeZip = "S:\Sistema\remessa\enviar\" & "Arquivos_in_" & Format(Now, "yyyy_mm_dd") & ".zip"

    Arquivo = "S:\Sistema\remessa\" & "20110317_101714_carga_in.txt"

    On Error Resume Next

    CriaNovoZip (NomeZip)

    Set oApp = CreateObject("Shell.Application")
    oApp.NameSpace(NomeZip).CopyHere Arquivo

    MsgBox "Criado com Sucesso em: " & NomeZip

    Set oApp = Nothing
    Exit Sub
    End Sub
    avatar
    necafi
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 27/06/2011

    [Resolvido]Compactar arquivo pelo Access Empty Zipar mais de um arquivo para o mesmo zip

    Mensagem  necafi 4/8/2011, 12:39

    Caros amigos

    Utilizei o código aqui mencionado, alterando-o para zipar vários arquivos, ms tem algo errado, porque para vez que ele roda o loop, substitui o arquivo zipado anteriormente. Meu código ficou assim:

    strDate = Format(Now, "dd-mm-yyyy")
    strCaminhoBase = "C:\minha_pasta"
    strCaminhoFotos = "C:\minha_pasta\fotos"

    DefPath = strCaminhoFotos & "\" 'Local e pasta onde estão as fotos"

    X = ScanFile(strCaminhoFotos, "*.jpg")

    For r = 0 To UBound(X.FileName)
    lista = X.FileName(r)

    FileNameZip = strCaminhoBase & "\" & strDate & ".zip"
    'strPrefix = "Relatorio Criticidade" 'Nome do ficheiro
    FName = strCaminhoFotos & "\" & lista '"C:\ferramentas\critica caracteristicas\mail\" & strPrefix & ".xls"
    On Error Resume Next
    CriaNovoZip (FileNameZip)

    Next
    Set oApp = CreateObject("Shell.Application")
    oApp.NameSpace(FileNameZip).CopyHere FName

    MsgBox "Criado com Sucesso em: " & FileNameZip
    Set oApp = Nothing
    Exit Sub

    Alguem pode me ajudar? (URGENTE)
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  vieirasoft 4/8/2011, 13:22

    Por favor, retire o Urgente do seu poste acima e leia as regras do fórum.

    REGRAS DO FÓRUM

    1. Tenha paciência com quem coloca aqui as suas duvidas.
    2. Clareza nos títulos dos tópicos e duvidas, evite a linguagem MSN.
    3. Não colocar diversas vezes a mesma dúvida.
    4. Explicar detalhadamente o problema e informar a versão do seu Office + Sistema Operativo.
    5. Retorne sempre se deu certo, esse retorno é muito importante.
    6. Respeite toda a equipe Staff e demais membros deste fórum.
    7. Use sempre o botão Busca, sempre que tiver uma dúvida e antes de abrir tópicos.
    8. Não usar palavras como "Urgente". O fórum é livre e ninguém é obrigado a responder com urgência.
    9. A publicidade é proíbida e só pode ser feita pelo Administrador ou depois de aprovada pelo Administrador.
    10. Se o seu tópico não for respondido, tem o direito de fazer um Up ao final de 24horas!
    11. A colocação de Códigos ou Exemplos, devem constar sempre os créditos de quem o elaborou.
    12. Fale, não GRITE! Só letras Maiúsculas, na Internet é o mesmo que gritar!


    Obrigado pela sua colaboração.
    avatar
    necafi
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 27/06/2011

    [Resolvido]Compactar arquivo pelo Access Empty Zipar mais de um arquivo para o mesmo zip

    Mensagem  necafi 4/8/2011, 13:28

    Me desculpe
    Gilberto Rocha
    Gilberto Rocha
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1027
    Registrado : 21/01/2010

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  Gilberto Rocha 18/1/2012, 20:57

    To com o mesmo problema, tentando zipar a pasta.
    Se alguém tiver a solução agradeço!!!
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  JPaulo 18/1/2012, 21:19

    Qual o erro que apresenta ?


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Instruções SQL como utilizar...
    Gilberto Rocha
    Gilberto Rocha
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1027
    Registrado : 21/01/2010

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  Gilberto Rocha 18/1/2012, 21:36

    Na verdade, uso o seu código, mas não está pegando nenhum arquivo de minha pasta, cria o zip sem nada.
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  JPaulo 18/1/2012, 21:38

    Poste aqui o codigo como está para eu ver.

    Qual a versão do seu Access ?


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Instruções SQL como utilizar...
    Gilberto Rocha
    Gilberto Rocha
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1027
    Registrado : 21/01/2010

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  Gilberto Rocha 18/1/2012, 21:43

    Access 2007

    Public Sub ZipaFotos()
    'Criado pelo meu amigo e colega Raw do Canadá
    'Adaptado por JPaulo ® Maximo Access
    Dim strDate As String, DefPath As String
    Dim oApp As Object
    Dim FName, FileNameZip
    Dim strPrefix As String

    ' Dim strPastaFotos As String
    ' strPastaFotos = DLookup("[LocalFoto]", "Tabela_configuracoes_Individuais")

    ' On Error Resume Next
    DefPath = "C:\Sistema IEAD\Fotos\"
    If right(DefPath, 1) <> "\" Then
    DefPath = DefPath & "\"
    End If

    FileNameZip = "C:\Sistema IEAD\Fotos\" & "Fotos" & ".zip"
    strPrefix = "Fotos" 'Nome do banco
    FName = "C:\Sistema IEAD\Fotos\" & "*.jpg"
    ' On Error Resume Next
    CriaNovoZip (FileNameZip)
    Set oApp = CreateObject("Shell.Application")
    oApp.NameSpace(FileNameZip).CopyHere FName
    MsgBox "Criado com Sucesso em: " & FileNameZip
    Set oApp = Nothing
    Exit Sub
    End Sub
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  JPaulo 18/1/2012, 21:55

    Não pode ter espaços nos nomes das pastas;


    Public Sub ZipaFotos()
    'Criado pelo meu amigo e colega Raw do Canadá
    'Adaptado por JPaulo ® Maximo Access

    Dim strDate As String, DefPath As String
    Dim oApp As Object
    Dim FName, FileNameZip
    Dim strPrefix As String

    ' Dim strPastaFotos As String
    ' strPastaFotos = DLookup("[LocalFoto]", "Tabela_configuracoes_Individuais")

    ' On Error Resume Next
    DefPath = "C:\Sistema IEAD\Fotos\"
    If right(DefPath, 1) <> "\" Then
    DefPath = DefPath & "\"
    End If

    FileNameZip = "C:\Sistema IEAD\Fotos\" & "Fotos" & ".zip"
    strPrefix = "Fotos" 'Nome do banco
    FName = "C:\Sistema IEAD\Fotos\" & "*.jpg"
    ' On Error Resume Next
    CriaNovoZip (FileNameZip)
    Set oApp = CreateObject("Shell.Application")
    oApp.NameSpace(FileNameZip).CopyHere FName
    MsgBox "Criado com Sucesso em: " & FileNameZip
    Set oApp = Nothing
    Exit Sub
    End Sub


    Última edição por JPaulo em 18/1/2012, 21:56, editado 1 vez(es)


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Instruções SQL como utilizar...
    Gilberto Rocha
    Gilberto Rocha
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1027
    Registrado : 21/01/2010

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  Gilberto Rocha 18/1/2012, 21:56

    Então, queria compactar a pasta toda, até consegui se eu informar o nome de um arquivo. Mas necessito de todos.
    Gilberto Rocha
    Gilberto Rocha
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1027
    Registrado : 21/01/2010

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  Gilberto Rocha 18/1/2012, 21:57

    Então irei copiar para outra pasta no C: e tentar, já aviso se deu certo.
    Gilberto Rocha
    Gilberto Rocha
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1027
    Registrado : 21/01/2010

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  Gilberto Rocha 18/1/2012, 22:32

    Nada, cria um zip vazio, o que estou errando?

    'Criado pelo meu amigo e colega Raw do Canadá
    'Adaptado por JPaulo ® Maximo Access
    Dim strDate As String, DefPath As String
    Dim oApp As Object
    Dim FName, FileNameZip
    Dim strPrefix As String

    ' Dim strPastaFotos As String
    ' strPastaFotos = DLookup("[LocalFoto]", "Tabela_configuracoes_Individuais")

    ' On Error Resume Next
    DefPath = "c:\FotosSis"
    If right(DefPath, 1) <> "\" Then
    DefPath = DefPath & "\"
    End If
    FileNameZip = DefPath & "Fotos" & ".zip"
    strPrefix = "Fotos" 'Nome do banco
    FName = "c:\FotosSis\" & strPrefix & "*.*"
    ' On Error Resume Next
    CriaNovoZip (FileNameZip)
    Set oApp = CreateObject("Shell.Application")
    oApp.NameSpace(FileNameZip).CopyHere FName
    MsgBox "Criado com Sucesso em: " & FileNameZip
    Set oApp = Nothing
    Exit Sub
    Gilberto Rocha
    Gilberto Rocha
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1027
    Registrado : 21/01/2010

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  Gilberto Rocha 18/1/2012, 22:50

    Consegui de outra maneira, mas confesso que gostaria de fazer como seu exemplo.

    Com uma linha de comando utilizando o 7zip:
    Shell ("C:\Arquivos de programas\7-Zip\7z.exe a c:\Fotos.zip C:\FotosSis\*.*")

    Se puder dar uma olhada depois, pois o problema desse meu código é se o cliente não ter o 7zip instalado.
    Eloirp
    Eloirp
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 229
    Registrado : 15/06/2013

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  Eloirp 30/7/2014, 18:41

    Aproveito este tópico para perguntar, alguém sabe me dizer como descompactar/abrir via VBA um arquivo em zip? Zipar eu sei como fazer e roda sem problemas, só não sei abrir via VBA e salvar em uma pasta....
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  JPaulo 31/7/2014, 15:32

    Teste por favor;

    Código:
    Sub DescomprimeZIP()
        Dim FSO As Object
        Dim oApp As Object
        Dim strDiretorioFicheiro As Variant
        Dim strPastaDestino As Variant
        Dim strDriveDestino As String

        strDiretorioFicheiro = "C:\SeuFicheiro.zip"
        
        If strDiretorioFicheiro = False Then
            'Não faz nada
        Else
             'Drive de destino
            strDriveDestino = "D:"
             If Right(strDriveDestino, 1) <> "\" Then
                strDriveDestino = strDriveDestino & "\"
            End If

            'Nome para a pasta de destino
            strPastaDestino = strDriveDestino & "NovaPasta\"

                If Len(Dir(strPastaDestino, vbDirectory)) = 0 Then
                          
            'Se a pasta de destino não existir, cria uma nova
            MkDir strPastaDestino
    Else
    End If
            'Extraí os ficheiros do .zip na pasta de destino
            Set oApp = CreateObject("Shell.Application")

            oApp.Namespace(strPastaDestino).CopyHere oApp.Namespace(strDiretorioFicheiro).items

            MsgBox "Ficheiros depositados em " & strPastaDestino

            On Error Resume Next
            Set FSO = CreateObject("scripting.filesystemobject")
            FSO.deletefolder Environ("Temp") & "\Temporary Directory*", True
        End If
    End Sub


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Instruções SQL como utilizar...
    Eloirp
    Eloirp
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 229
    Registrado : 15/06/2013

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  Eloirp 31/7/2014, 16:26

    Perfeito JPaulo!
    Apenas que como vai sobrepor o arquivo existente ele apareceu a mensagem de que já existe e se quer manter... não teria como eliminar isso?

    Abraço,
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  JPaulo 31/7/2014, 18:21

    Dá sim mas só amanhã posso ver isso.


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Instruções SQL como utilizar...
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  JPaulo 1/8/2014, 11:21

    Teste por favor;

    Código:
    Sub DescomprimeZIP()
        Dim FSO As Object
        Dim oApp As Object
        Dim strDiretorioFicheiro As Variant
        Dim strPastaDestino As Variant
        Dim strDriveDestino As String

        strDiretorioFicheiro = "C:\teste.zip"
       
        If strDiretorioFicheiro = False Then
            'Não faz nada
        Else
            'Drive de destino
            strDriveDestino = "D:"
            If Right(strDriveDestino, 1) <> "\" Then
                strDriveDestino = strDriveDestino & "\"
            End If

            'Nome para a pasta de destino
            strPastaDestino = strDriveDestino & "NovaPasta\"

                If Len(Dir(strPastaDestino, vbDirectory)) = 0 Then
                         
            'Se a pasta de destino não existir, cria uma nova
            MkDir strPastaDestino
    Else
    End If
    'Se o ficheiro a descomprimir existir, deleta-o
            If Dir("D:\NovaPasta\teste.accdb") <> "" Then
                Kill ("D:\NovaPasta\teste.accdb")
            Else
         
            'Extraí os ficheiros do .zip na pasta de destino
            Set oApp = CreateObject("Shell.Application")

            oApp.Namespace(strPastaDestino).CopyHere oApp.Namespace(strDiretorioFicheiro).items

            MsgBox "Ficheiros depositados em: " & strPastaDestino

            On Error Resume Next
            Set FSO = CreateObject("scripting.filesystemobject")
            FSO.deletefolder Environ("Temp") & "\Temporary Directory*", True
        End If
      End If
    End Sub


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Instruções SQL como utilizar...
    Eloirp
    Eloirp
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 229
    Registrado : 15/06/2013

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  Eloirp 1/8/2014, 15:06

    Só um pequeno ajuste (vermelho) no código e rodou perfeitamente!
    Muito obrigado mais uma vez JPaulo!

    Sub DescomprimeZIP()
       Dim FSO As Object
       Dim oApp As Object
       Dim strDiretorioFicheiro As Variant
       Dim strPastaDestino As Variant
       Dim strDriveDestino As String

       strDiretorioFicheiro = "C:\teste.zip"
       
       If strDiretorioFicheiro = False Then
           'Não faz nada
       Else
            'Drive de destino
           strDriveDestino = "D:"
            If Right(strDriveDestino, 1) <> "\" Then
               strDriveDestino = strDriveDestino & "\"
           End If

           'Nome para a pasta de destino
           strPastaDestino = strDriveDestino & "NovaPasta\"

               If Len(Dir(strPastaDestino, vbDirectory)) = 0 Then
                         
           'Se a pasta de destino não existir, cria uma nova
           MkDir strPastaDestino
    Else
    End If
    'Se o ficheiro a descomprimir existir, deleta-o
           If Dir("D:\NovaPasta\teste.accdb") <> "" Then
               Kill ("D:\NovaPasta\teste.accdb")
           End If
         
           'Extraí os ficheiros do .zip na pasta de destino
            Set oApp = CreateObject("Shell.Application")

           oApp.Namespace(strPastaDestino).CopyHere oApp.Namespace(strDiretorioFicheiro).items

           MsgBox "Ficheiros depositados em: " & strPastaDestino

           On Error Resume Next
           Set FSO = CreateObject("scripting.filesystemobject")
           FSO.deletefolder Environ("Temp") & "\Temporary Directory*", True

     End If
    End Sub
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  JPaulo 1/8/2014, 15:09

    Obrigado pelo retorno o forum agradece.


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Compactar arquivo pelo Access Folder_announce_new Instruções SQL como utilizar...

    Conteúdo patrocinado


    [Resolvido]Compactar arquivo pelo Access Empty Re: [Resolvido]Compactar arquivo pelo Access

    Mensagem  Conteúdo patrocinado


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