obtener nombre de las hojas de un libro sin abrirlo

04/02/2007 - 02:58 por Ivan | Informe spam
hola a todos

prácticamente el asunto lo dice todo: ¿es posible obtener vía código los
nombres de las hojas de un libro sin tener que abrirlo? no me haría falta
acceder a los datos de dicho libro, tan solo obtener estos nombres, y de
paso (como mucho, pero no imprescindible) el valor de otras propiedades tipo
: fecha creación, ultima modificación. etc..

para esto ultimo he pensado que quizás me valiera DocumentProperty (no lo he
probado ), pero lo cierto es que para el nombre de las hojas no se muy bien
como intentarlo

si podéis echarme una mano os lo agradezco

un saludo y hasta pronto
Ivan
 

Leer las respuestas

#1 Héctor Miguel
04/02/2007 - 03:25 | Informe spam
hola, Ivan !

... es posible obtener via codigo los nombres de las hojas de un libro sin tener que abrirlo?
... y de paso (como mucho, pero no imprescindible) el valor de otras propiedades tipo: fecha creacion, ultima modificacion. etc...



el siguiente ejemplo 'trabaja bien' leyendo los nombres/etiquetas de las hojas de un libro cerrado:
si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

-> IMPORTANTE: establece primero en tu proyecto de macros VBA una referencia a la libreria...
-> Microsoft ADO Ext. x.x for DDL and Security
== en un modulo de codigo 'normal' =Sub Nombres_hojas()
Dim Libro As ADOX.Catalog, Hoja As ADOX.Table, Archivo As String, Msj As String
Set Libro = New ADOX.Catalog
Archivo = "Ruta y\Sub-carpetas a tu\Archivo cerrado.xls"
Libro.ActiveConnection = _
"Provider=MSDASQL.1;Data Source=Excel Files;Initial Catalog=" & Archivo
For Each Hoja In Libro.Tables
If Right(Hoja.Name, 1) = "$" Then
If Msj <> "" Then Msj = Msj & vbCr
Msj = Msj & Left(Hoja.Name, Len(Hoja.Name) - 1)
End If
Next
MsgBox Msj
Set Libro = Nothing
End Sub

Preguntas similares