como faço pra descompactar um arquivo que se encontra na pasta c:\pasta1. nome do arquivo = arquivo.zip, usando o 7.zip
como faço pra descompactar um arquivo que se encontra na pasta c:\pasta1. nome do arquivo = arquivo.zip, usando o 7.zip
Olá Danielle, tudo bem?
Ao clicar sobre o arquivo com o botão direito do mouse, terá uma opção chamada 7-zip. Coloque o ponteiro do mouse sobre a opção e aparecerão várias opções. Selecione Extrair aqui e os arquivos serão descompactados.
Espero ter ajudado e bons estudos!
David, quero saber como faz isso na macro em vba.
Oi Daniele. Se você quer criar uma macro para extrair determinado arquivo segue um exemplo que você pode adaptar conforme sua necessidade:
Sub Unzip1()
Dim FSO As Object
Dim oApp As Object
Dim Fname As Variant
Dim FileNameFolder As Variant
Dim DefPath As String
Dim strDate As String
'O código abaixo vai solicitar o caminho onde o arquivo zip se encontra.
'Ao invés de solicitar você pode trocar o código pelo caminho que você deseja setar (exemplo: "C:\Users\Daniela\test\")
Fname = Application.GetOpenFilename(filefilter:="Zip Files (*.zip), *.zip", _
MultiSelect:=False)
If Fname = False Then
'Do nothing
Else
'Este código vai pegar a pasta root principal, pode ser substituido por outro caminho se preferir
DefPath = Application.DefaultFilePath
If Right(DefPath, 1) <> "\" Then
DefPath = DefPath & "\"
End If
'Este código definirá o nome da pasta a ser criado
strDate = Format(Now, " dd-mm-yy h-mm-ss")
FileNameFolder = DefPath & "MinhaPastaExtraida " & strDate & "\"
'O código abaixo irá criar o nome para a pasta onde irá colocar os arquivos extraídos
MkDir FileNameFolder
'Extrai o arquivo zip
Set oApp = CreateObject("Shell.Application")
'Cola os arquivos extraidos para pasta destino
oApp.Namespace(FileNameFolder).CopyHere oApp.Namespace(Fname).items
'Se quiser extrair apenas um arquivo dentro do zip, utilize o codigo comentado abaixo:
'oApp.Namespace(FileNameFolder).CopyHere _
'oApp.Namespace(Fname).items.Item("test.txt")
MsgBox "Seus arquivos estão aqui na: " & FileNameFolder
On Error Resume Next
Set FSO = CreateObject("scripting.filesystemobject")
FSO.deletefolder Environ("Temp") & "\Temporary Directory*", True
End If
End Sub
Se esta resposta foi o suficiente para sanar sua duvida, marque este post como solucionado. Obrigado e bons estudos.