Visual Basic para Aplicaciones - POR QUE NO SE DETECTA LA SUB O FUNCION "EXISTEARCHIVO"

Life is soft - evento anual de software empresarial
 
Vista:

POR QUE NO SE DETECTA LA SUB O FUNCION "EXISTEARCHIVO"

Publicado por DAVID MA (1 intervención) el 20/08/2020 17:02:13
BUEN DIA.
SILICITO DE SU APOYO, NO SOY EXPERTO EN VBA. MI PROBLEMA ES QUE TENGO UN CODIGO PARA QUE MI ARCHIVO SOLO SE ABRA CUANDO DETECTE QUE EXISTE OTRO ARCHIVO EN LA MISMA PC, FUNCIONA BASTANTE BIEN, SIN EMBARGO COPIE EL CODIGO PARA PONERLO EN OTRO LIBRO Y AL MOMENTO DE CORRER LA MACRO NO ME DETECTA QUE ES UNA FUNCION. EL CODIGO ES EL SIGUIENTE:

1
2
3
4
5
6
7
8
9
Sub Workbook_Open()
Application.ScreenUpdating = False
Dim W As Worksheet
On Error Resume Next
If Not (existeArchivo("C:\WINDOWS\SETUPDF2PC.INI")) Then
MsgBox "SIN PERMISOS. PONGASE EN CONTACTO CON EL CREADOR", vbCritical + vbOKOnly, "ATENCI?N"
ThisWorkbook.Close True
Exit Sub
End If

CUANDO SE CORRE LA MACRO ME MANDA ERROR QUE NO SE DETECTA SUB O FUNCION Y ME RESALTA DONDE DICE "ExisteArchivo", . ESE ES MI PROBLEMA, PORQUE EN UN ARCHIVO SI CORRE BIEN Y EN OTRO NO DETECTA LA FUNCION?????
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 1.134
Oro
Ha mantenido su posición en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

POR QUE NO SE DETECTA LA SUB O FUNCION "EXISTEARCHIVO"

Publicado por Antoni Masana (498 intervenciones) el 21/08/2020 08:34:28
No corre porque es una función de programador y si no la copias no existe.
Esto también debería funcionar:

1
2
3
4
5
6
7
8
9
Sub Workbook_Open()
    Application.ScreenUpdating = False
    Dim W As Worksheet
    On Error Resume Next
    If Dir("C:\WINDOWS\SETUPDF2PC.INI")="" Then
        MsgBox "SIN PERMISOS. PONGASE EN CONTACTO CON EL CREADOR", vbCritical + vbOKOnly, "ATENCI?N"
        ThisWorkbook.Close True
    Exit Sub
End If

Esto solo verifica que el fichero existe físicamente, NO verifica tamaña ni permisos.

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de gilman
Val: 138
Bronce
Ha mantenido su posición en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

POR QUE NO SE DETECTA LA SUB O FUNCION "EXISTEARCHIVO"

Publicado por gilman (47 intervenciones) el 21/08/2020 09:13:20
La respuesta que te ha dado Antoni Masana funcionará correctamente, el problema de en un libro funcione tu código y en otro no, es porque en el que funciona existe una función llamada ExisteArchivo, búscala y pegala en el que falla
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar