Una familia de software de hoja de cálculo de Microsoft con herramientas para analizar, trazar y comunicar datos.
disculparas 'el rollo' (pero lo que pides no es 'enchilame otra' 😁)
- al procedimiento debes proveerle la ruta completa del archivo que necesites analizar
desde aqui: \Cobog61ns1vf1\
hasta el .xlsx
SIN el apostrofo inicial y SIN los corchetes
- analizara una lista con los nombres de las hojas contenidas en ese archivo (SIN abrirlo -en excel-)
- por la misma razon, tu procedimiento NO podra ser secuencial automatico
3.a) debes estar atento a seleccionar alguna hoja de la lista real de cada archivo)
3.b) O... (si lo prefieres) preguntar SOLO por una hoja en especifico, y si NO existe... 'el que sigue' ?
- asumiendo que tienes una lista de archivos (y hojas requeridas)
4.a) una columna puede ser la ruta (completa) hasta el nombre del archivo (punto 1)
4.b) otra columna contendra (solo) el nombre de la hoja requerida
- este procedimiento comprueba si la hoja buscada existe (3.b):
lo deberas copiar > pegar (o escribir) en un modulo de codigo estandar:
Function buscaHojaEnLibroCerrado(archivo As String, hoja As String) As Boolean
' UDF para comprobar nombres de hojas de calculo en libros cerrados ' _
I+D: Héctor Miguel Orozco Díaz © ® ™ (Junio de 2007) ' _
TRANSCRIBE ESTO cuando lo reproduzcas (by GNU/GPL -Generic Public License-) ' _
=> bajo cualquier ajuste, enmienda o personalizacion <= '
Dim tabla As Object, chk As String, existe As Boolean: existe = False
With CreateObject("adox.catalog")
.ActiveConnection = "provider=msdasql.1;data source=excel files;initial catalog=" & archivo
For Each tabla In .Tables: chk = Replace(tabla.Name, "'", "")
If LCase(chk) = LCase(hoja) & "$" Then existe = True: Exit For
Next: End With: buscaHojaEnLibroCerrado = existe: End Function
- dentro de tu procedimiento debes incluir en un bucle la UDF (p.ej.) If buscaHojaEnLibroCerrado(celda_ruta, celda_hoja) Then
End If' aqui las acciones en caso de que la hoja buscada SI exista ... '