Obtuve un montón de archivos grabados en formato ".Zip". Mi VBA los abre todos y resta los detalles como texto. Como hay muchos, el Libro de trabajo crea hojas y mantiene el recuento de la siguiente manera:
ActiveSheet.Paste
Dim sheetsQuantity As Integer
sheetsQuantity = ThisWorkbook.Worksheets.Count
ActiveSheet.Name = "Sheet" & sheetsQuantity - 3
Necesito actualizar ("Hoja" y cantidad) para que sea el nombre del archivo que se abrió para obtener la información y, dado que hay muchos archivos, cada hoja debe coincidir con el archivo. Entonces, si el archivo n.° 1 se llama "MatchCase.zip", necesito que la hoja n.° 1 sea "MatchCase.zip" y así sucesivamente.
Cualquier consejo, por favor.
Respuesta1
Esto puede depender de su versión de Win y de su estructura de archivos. Creé un ZIP
archivo en mi escritorio llamadotitular.Zip. En la carpeta hay un solo archivo llamadoformatos.xlsm
Abro el archivo y selecciono alguna hoja en el libro y examino Path
el libro 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
Yo obtengo:
Claramente, ActiveSheet tiene un padre(el libro que sostiene la hoja). Ese libro tiene una ruta que incluye el nombre del ZIP
archivo.
Lamentablemente, Path
no incluye la información quetitular.zipreside en mi escritorio.