Recebi vários arquivos gravados no formato ".Zip". Meu VBA abre todos eles e subtrai os detalhes como texto. Como são muitos, a Pasta de Trabalho cria planilhas e mantém a contagem assim:
ActiveSheet.Paste
Dim sheetsQuantity As Integer
sheetsQuantity = ThisWorkbook.Worksheets.Count
ActiveSheet.Name = "Sheet" & sheetsQuantity - 3
Preciso atualizar ("Folha" e quantidade) para ser o nome do arquivo que foi aberto para obter as informações, e como há muitos arquivos, cada planilha deve corresponder ao arquivo. Portanto, se o arquivo nº 1 for chamado "MatchCase.zip", preciso que a planilha nº 1 seja "MatchCase.zip" e assim por diante.
Qualquer conselho, por favor.
Responder1
Isso pode depender da versão do Win e da estrutura do arquivo. Criei um ZIP
arquivo na minha área de trabalho chamadosuporte.Zip. Na pasta há um único arquivo chamadoformatos.xlsm
Abro o arquivo e seleciono alguma planilha na pasta de trabalho e examino Path
a pasta de trabalho usando:
Sub WhoHoldsMe()
Dim sPath As String
sPath = ActiveSheet.Parent.Path
arr1 = Split(sPath, "\")
arr2 = Split(arr1(UBound(arr1)), "_")
MsgBox sPath & vbCrLf & arr2(1)
End Sub
Eu recebo:
Claramente, o ActiveSheet tem um pai(a pasta de trabalho que contém a planilha). Essa pasta de trabalho possui um caminho que inclui o nome do ZIP
arquivo.
Infelizmente, o Path
não inclui as informações quesuporte.zipreside na minha área de trabalho.