Cómo determino si un libro está abierto

24/06/2007 - 23:25 por Faiverlgr | Informe spam
Buen día

Gracias. Necesito saber si determinado libro está abiertoa través de código
de VB.

Preguntas similare

Leer las respuestas

#1 KL
25/06/2007 - 00:59 | Informe spam
Hola Faiverlgr,

"Faiverlgr" wrote in message news:
Buen día

Gracias. Necesito saber si determinado libro está abiertoa través de código de VB.



Revisa los siguientes enlaces:
http://j-walk.com/ss/excel/tips/tip54.htm#func6
http://tinyurl.com/2k7adm

Saludos,
KL
Respuesta Responder a este mensaje
#2 Héctor Miguel
25/06/2007 - 01:00 | Informe spam
hola, (...) ?

... saber si determinado libro esta abierto a traves de codigo de VB.



voy a suponer que es una 'accion' que se va a repetir varias veces en algun proceso
[con lo que seria mejor definir una funcion personalizada y 'pasarle' el nombre del libro]

si cualquier duda [o informacion adicional]... comentas?
saludos,
hector.

1) si NO se trata de archivos 'en red'...
en un modulo de codigo 'normal' ==Function EsLibroAbierto(Libro As String) As Boolean
On Error Resume Next
EsLibroAbierto = Len(Workbooks(Libro).Name)
End Function

-> la forma de 'llamar' a esta funcion es +/- como sigue...
If Not EsLibroAbierto("nombre del libro.xls") Then Workbooks.Open "c:uta yombre del libro.xls"

2) si SON archivos 'en red'...
en un modulo de codigo 'normal' ==Function EsLibroAbierto(Nombre As String) As Boolean
Dim Archivo As Byte
Archivo = FreeFile
On Error Resume Next
Open Nombre For Binary Access Read Write Lock Read Write As #Archivo
Close #Archivo
If Err.Number = 0 Then Exit Function
EsLibroAbierto = True
Err.Clear
End Function

-> la forma de 'llamar' a esta funcion es +/- como sigue...
If Not EsLibroAbierto("C:\Ruta y\Nombre del libro.xls") Then Workbooks.Open "C:\Ruta y\Nombre del libro.xls"

toma nota que en ambos casos el libro que se abre queda como libro activo
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida