'Crea un módulo nuevo y pega este código. Nombre: basDeclararyEstablecerVariablesPúblicas Option Compare Database Option Explicit Option Compare Database 'Usar orden de base de datos en comparaciones de cadenas Option Explicit 'Para forzar la declaración explícita de todas las variables ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ''' Actualización: 01/11/2002 ''' ''' Desarrollador: McPegasus, www.mcpegasus.com ''' ''' Contacto: mcpegasus@mcpegasus.com ''' ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 'Nombre del Módulo _ ---------------------------------------------------------------------------------------- 'basDeclararyEstablecerVariablesPúblicas 'Objetivo _ ---------------------------------------------------------------------------------------- 'Declarar las variables públicas y establecer los valores. Estas variables pueden ser _ comunes en las aplicaciones que desarrollo. 'Para consultar en cualquier lugar de la aplicación, la ruta donde está la Base de _ Datos actual. Public pstrRutaBDActual As String 'Para saber quien es el usuario que está utilizando la aplicación. De este modo se _ prodrá restringir o dar permiso a ciertos controles. _ Se le establecen los valores al abrir el Panel de Control Principal con la función _ pEstablecerVariablesPúblicas. Public pStrIdUsuario As String Public pStrNombreUsuario As String Public pStrCargoUsuario As String 'Para consultar en cualquier lugar de la aplicación si esta está considerada como _ terminada. Public pblnAplicaciónTerminada As Boolean Public Sub pEstablecerVariablesPúblicas() 'Objetivo _ ---------------------------------------------------------------------------------------- 'Establecer las variables públicas que se pueden necesitar en cualquier momento de la _ aplicación. 'Sintaxis _ ---------------------------------------------------------------------------------------- 'En el formulario de inicio de la aplicación, generalmente frmPanelControlPrincipal _ y en el evento "Al abrir" _ Call pEstablecerVariablesPúblicas 'Comentarios _ ---------------------------------------------------------------------------------------- 'Este procedimiento no se puede utilizar en un módulo externo referenciado ya que _ necesitamos los datos de la base de datos actual. On Error GoTo Err_pEstablecerVariablesPúblicas 'Buscar el valor en las Propiedades de la base de datos, ficha Personalizar. pblnAplicaciónTerminada = _ CurrentDb.Containers!Databases.Documents!UserDefined.Properties("pbdpAplicaciónTerminada") 'Conocer la ruta de la base de datos en la que se está ejecutando el código. pstrRutaBDActual = CodeDb.Name 'Establecer el usuario, por el IDVendedor. pStrIdUsuario = DLookup("fldUsuario", "tblValoresPredeterminados") 'Establecer el cargo del usuario. pStrCargoUsuario = DLookup("fldCargo", "tblEmpleados", "fldIDVendedor = '" & pStrIdUsuario & "'") 'Establecer el nombre del usuario. pStrNombreUsuario = DLookup("fldNombreApellidos]", "tblEmpleados", "fldIDVendedor = '" & pStrIdUsuario & "'") Salida: Exit Sub Err_pEstablecerVariablesPúblicas: Select Case Err.Number Case 3270 'No se encontro la propiedad. CurrentDb.Containers!Databases.Documents!UserDefined.Properties.Append _ CurrentDb.Containers!Databases.Documents!UserDefined.CreateProperty _ ("pbdpAplicaciónTerminada", dbBoolean, False) Resume Next 'Para volver a la línea siguiente donde se produjo un error. Case Else 'Cazar todos aquellos errores inesperados. MsgBox Err.Number & " " & Err.Description End Select Resume Salida 'Salida a otro procedimiento. End Sub