Saltar al contenido

Funcion isfileopen con ruta de archivo compartido via web


Recommended Posts

publicado

Hola,
Actualmente tengo una macro que me hace una comprobación de si un fichero está abierto o no.
Al pasar estos archivos a una carpeta compartida via web he tenido que actualizar la ruta del archivo
Al actualizar la ubicación del archivo y el nombre del archivo con la propia, funciona toda la macro excepto la funcion isfileopen.
" If IsFileOpen(UbicacionNombre) Then
' Display a message stating the file in use.
MsgBox "El fichero " & NombreFicheroEmpleados & "está en uso. Lo tienen que cerrar para poder continuar", vbCritical, "MENSAJE DE ERROR"
Application.ScreenUpdating = True
Exit Sub
End If"

UbicacionFicheroEmpleados = "https://bsi1870ext-my.sharepoint.co...1870_net/Documents/COMUN SAGUNTO/PERSONAL BG/"
UbicacionNombre = UbicacionFicheroEmpleados + "Listado%20de%20empleados%20V12.xlsm"

Function IsFileOpen(FileName As String)
Dim iFilenum As Long
Dim iErr As Long
On Error Resume Next
iFilenum = FreeFile()
Open FileName For Input Lock Read As #iFilenum
Close iFilenum
iErr = Err
On Error Goto 0
Select Case iErr
Case 0: IsFileOpen = False
Case 70: IsFileOpen = True
Case Else: Error iErr
End Select
End Function

 

 


Por favor, me podeis ayudar a saber que es lo que no funciona?
Gracias

publicado

Hola

En los foros de habla hispana los que respondemos frecuentemente lo hacemos en más de un foro; el hecho que preguntes lo mismo en otro foro no significa que vayas a tener otra respuesta solo porque no te gustó la que se te dio, así que paso a casi colocar lo mismo que ya se te dijo:

Cuando se usa SharePoint, incluso dependiendo de la configuración y lo que hayas activado, una macro no va a poder detectar si el archivo se abrió en Excel Online desde tu SharePoint ni tampoco si se abrió desde escritorio como coautoría. Las macros (VBA) no tienen la capacidad de verificar si en Excel Online se tiene un archivo abierto y tampoco pueden conectarse con un archivo abierto en otra PC, así sea en coautoría. Si deseas que el archivo esté disponible para varias personas y poder hacer que solo trabaje uno a la vez como máximo, necesariamente tienes que usar una LAN (red) o VPN para compartir dicho archivo.

Saludos

PD: Navegando por internet vas a ver algunas alternativas de hace años (e inglés) pero si relees en todos los casos no funcionan realmente como se espera.

 

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.