¿Cómo pongo en una macro de access una condición que pregunte por la existencia de una tabla determinada?

Quiero dar un mensaje de error cuando una tabla no se encuentra en la base de datos en la que estoy trabajando. Lo quiero hacer con una condición del mensaje en una macro.

1 Respuesta

Respuesta
1

Finkiel: Normalmente utilizo el código que te cito, y es más amplio de lo que tu pides, ya que mira si es Tabla o Consulta, pero podrás abrir el criterio de buscar:

En un Módulo Standard, pones todo ésto:

Public NombreObjeto As String
Public Qdf As QryDef
Public Objeto As Object
Public Existe As Boolean
Public EsConsulta As Boolean
Public EsTabla As Boolean

Function ExisteObjeto(NombreObjeto)

Existe = False
EsConsulta = False
EsTabla = False

For Each Objeto In CurrentDb.QueryDefs
If NombreObjeto = LCase(Objeto.Name) Then
Existe = True
EsConsulta = True
Exit For
End If
Next
If Not Existe Then
EsConsulta = False
For Each Objeto In CurrentDb.TableDefs
If NombreObjeto = LCase(Objeto.Name) Then
Existe = True
EsTabla = True
Exit For
End If
Next
End If

End Function ' ExisteObjeto
‘******************

Desde cualquier procedimiento Función desde donde quieras llamar a la Función anterior:

'Antes de xxxx la Tabla/Consulta "NombreTablaConsulta " miro si existe
Call ExisteObjeto("NombreTablaConsulta")

If Existe = False Then
MsgBox "La Tabla/Consulta NombreTablaConsulta no existe. Revisa el Nombre y repite la operación.", vbInformation, "MENSAJE INFORMATIVO"
Exit Sub
Else
‘Lo que quieras
End If

Espero haberte ayudado, ya me contarás. Saludos >> Jacinto

Jacinto gracias por tu respuesta. Mi intención es hacerlo sin escribir ningún comando de código o modulo sino usando todo lo que automáticamente permite access en la ejecución de macros. Podrías decirme si se puede escribir en la condición de un mensaje en una macro.

Nunca he utilizado las Macros y por tanto no te puedo decir que permiten hacer. Lo siento. Saludos >> Jacinto

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas