| |
Trucos Access
1.- General
Desde la ventana de la Base de datos, seleccionar una tabla, consulta,
formulario o informe y arrastrarlo al escritorio de Windows o a una
carpeta del Explorador si estuviera abierto, o bien a una ventana de
iconos. Se creará un acceso directo a ese objeto de la base de
datos y se podrá ejecutar directamente.
Access proporciona un entorno visual de desarrollo con el que se pueden
generar potentes aplicaciones. El problema surge cuando el desarrollo
realizado adquiere un volumen considerable. ¿Cómo controlar
y gestionar cantidad de formularios, informes, macros, etc. que se han
ido generando?
Una opción muy interesante y poco conocida de Access es el documentador.
En el menú Herramientas, opción Analizar, se puede acceder
al documentador que permite obtener información completa y organizada
de los objetos que constituyen la base de datos, de manera que se genera
un inventario de todos los componentes y sus propiedades.
Esto es para que las bases de datos queden más profesionales
consiguiendo que aparezca un logotipo personalizado al abrir una base
de datos y no el logotipo habitual de Access.
Hay que crear una pantalla gráfica con cualquier programa y guardarla
como BMP con el mismo nombre que la base de datos, ponerla en el mismo
directorio en el que se guarda la base. Luego crear un acceso directo
a la aplicación. Al arrancar desde este icono, Access verá
que hay un gráfico BMP con el mismo nombre que la base de datos
y aparecerá durante unos segundos en sustitución del que
aparece por defecto.
MDE se presentó como nueva característica en Access
97. Se trata de una copia del fichero MDB, en el cual se ha eliminado
todo el código fuente de la aplicación. Ha sido diseñado
para entregar soluciones que no tengan que modificarse. Es más
pequeño que un MDB, debido a que el código fuente se ha
eliminado. De esta manera se garantiza que la base de datos permanecerá
en estado compilado. Como beneficio adicional, añade otro componente
de seguridad: como el código fuente se ha eliminado, éste
ya no será visible.
a) Proteger mediante contraseña una base de datos:
Proteger la base de datos con una contraseña, desde la versión
7.0, viene como una opción de menú. Concretamente, en
el menú Herramientas, opción Seguridad, la primera subopción
que se ofrece es Establecer contraseña para la base de datos.
Si se activa dicha opción, aparecerá un cuadro de diálogo
en el que se puede definir la contraseña; una vez pulsado el
botón Aceptar, cada vez que cualquier usuario de Access, intente
abrir la base de datos, se le solicitará la contraseña
y no podrá entrar en ella si no introduce el valor correcto.
Pero, una vez dentro, puede hacer cualquier barbaridad.
b) Proteger una base de datos por control de usuarios:
Hay otra opción algo más compleja. Access incorpora unos
ficheros (desde la versión 7.0 con extensión .MDW y en
la versión 2.0 con extensión .MDA) en los que guarda los
valores de seguridad. Se accede a dichos ficheros utilizando el ejecutable
WRKGADM.EXE que suele encontrarse en el directorio de Access. El nombre
que suele aparecer para el ejecutable es Administrador para trabajo
en grupo. Access trae por defecto un fichero SYSTEM.MDW, normalmente
en el mismo directorio, el cual contiene dos Grupos de usuarios: Administradores
y Usuarios y un único usuario llamado Administrador. Si se ejecuta
Access, se entra en cualquier base de datos y se selecciona del menú
Herramientas la opción Seguridad/Cuentas de usuario y de grupo,
se puede comprobar en el cuadro de diálogo que se visualiza que
en el cuadro combinado Usuario/Nombre aparece el usuario Administrador
y en el cuadro de lista Grupos disponibles, los dos grupos indicados
anteriormente. Todo lo anterior existía, aunque no se intuyera.
Cuando se inicia Access, el programa se conecta al fichero SYSTEM.MDW,
del directorio Access, y por lo tanto, por defecto se entra en las bases
de datos como Administrador, y por ello se puede hacer de todo con ellas.
Lo que hay que hacer para asegurar una base de datos es crear un nuevo
fichero para trabajo en grupo, es decir un nuevo xxxx.MDW. Para ello
ejecutar WRKGADM.EXE y ahí se verá que, sin saberlo, se
está conectado a SYSTEM.MDW (es el archivo que aparece en la
línea Archivo de información), el cuadro de diálogo
tiene un botón para crear un nuevo archivo (seguir sus instrucciones,
leyendo todo y anotando cuidadosamente todo lo que diga que hay que
anotar). Cuidado a la hora de grabar pues propone reemplazar SYSTEM.MDW
y eso no debe hacerse. Pongamos por caso que se crea un archivo llamado
PRUEBSEG.MDW (mejor ubicarlo en el mismo directorio en el que se encuentra
la base de datos que se pretende asegurar). Por defecto, al crearlo,
Access queda conectado a dicho grupo de seguridad. Se puede comprobar
saliendo y volviendo a entrar. La línea Archivo de información
contiene ahora el nombre del nuevo fichero .MDW. Salir de nuevo. Ahora
se puede conectar (antes de ejecutar el propio Access) a uno u otro
grupo de trabajo.
Al entrar en Access habiendo conectado previamente al nuevo grupo, no
aparecen las últimas bases de datos abiertas, sino que el lugar
aparece vacío; esto es porque en el archivo MDW, además
de grupos de usuarios y usuarios, guarda también esta información.
Ahora vamos a empezar a hacer una base de datos segura:
* Asegurarse de estar conectado al grupo PRUEBSEG.MDW
* Abrir Access y, sin abrir ninguna base de datos, elegir del menú
Herramientas la opción Cuentas de usuario y de grupo. Aparece
un cuadro de diálogo más confuso de lo que a primera vista
parece.
* Observar que está abierta la pestaña Usuarios y que
en el cuadro combinado Nombre, sólo aparece el usuario Administrador.
* Pulsar el botón Nuevo para crear un nuevo usuario; se solicitará
Nombre para el mismo e Id.personal; el segundo no es importante y se
puede poner el mismo nombre en los dos sitios para no provocar más
confusión.
* Pulsar Aceptar. Verificar que el nuevo usuario aparece en el cuadro
combinado y que, por defecto lo ha incluido en el Grupo "Usuarios"
y comprobar si en el cuadro de lista de abajo a la derecha aparece dicho
grupo y señalar en el cuadro de lista de la izquierda el valor
Administradores.
* Pulsar el botón Agregar>>. Ahora el nuevo usuario (imaginemos
que se le ha llamado PruebasAdmin), también pertenece al grupo
Administradores. Cualquier usuario que se cree puede pertenecer a más
de un grupo de usuarios.
* Pulsar la pestaña Cambiar contraseña de conexión.
Aparece un cuadro de diálogo para cambiar la contraseña
del usuario actual. Observar que indica que el usuario actual es el
Administrador (no PruebasAdmin). Dejar en blanco el valor Contraseña
anterior y teclear el mismo valor en Contraseña nueva y Confirmación.
Pulsar Aceptar. Lo que se acaba de hacer es poner una contraseña
al Administrador de Access y, a partir de este momento, cuando se ejecute
Access conectado al grupo de usuarios PRUEBSEG.MDW, siempre pedirá
usuario y contraseña.
* Al intentar entrar, Access pedirá usuario y contraseña.
Lo que lo que antes aparecía como Administrador ahora aparece
como Admin en nombre de usuario aunque en realidad se está refiriendo
al mismo usuario. Entrar y salir de Access.
* Como en un paso de los anteriores, crear un usuario llamado PruebasAdmin,
e intentar entrar con él en Access. Observar que aún no
tiene contraseña, por lo que, para entrar con él, curiosamente
se tiene el campo Contraseña vacío. Una vez dentro, se
puede poner a dicho usuario una contraseña. Ni siquiera el administrador
tiene capacidad para asignar ni ver contraseñas ajenas. Lo que
se puede hacer es borrar las contraseñas (que siempre es útil
para el usuario inútil, al que se le olvida la contraseña).
Salir de nuevo de Access.
* Ejecutar WRKGADM.EXE para cambiar de grupo y conectarse al grupo de
toda la vida: SYSTEM.MDW y, una vez hecho, entrar de nuevo en Access,
notando que ahora todo vuelve a la normalidad: se verán las llamadas
antiguas a las bases de datos, no se pide contraseña, etc.
Resumen de lo realizado hasta ahora:
· Hemos creado un Grupo de trabajo nuevo al que hemos llamado
PRUEBSEG.MDW.
· En él hemos creado un usuario nuevo: PruebasAdmin, al
que hemos incorporado en el grupo de Administradores, aunque también
pertenece al grupo Usuarios.
Para asegurar una base de datos:
1) Conectarse al grupo de trabajo seguro (en este caso PRUEBSEG.MDW).
2) Abrir Access y entrar con el usuario seguro: PruebasAdmin.
3) Crear una base de datos vacía, que llamaremos BaseDatosSegura.MDB
4) Importar a la misma todas las tablas, consultas, formularios, informes,
macros y módulos desde la base de datos que se pretende hacer
segura (en Access 7.0 y 97, elegir Archivo/Obtener datos externos/Importar).
Se acaba de crear una base de datos cuyo propietario es PruebasAdmin
del grupo de trabajo PRUEBSEG.MDW.
5) Con la base de datos nueva abierta, elegir Herramientas/Seguridad/Cuentas
de usuario y de grupo...
6) Al usuario Administrador quitarlo del grupo Administradores.
7) Asegurémonos de que el usuario PruebasAdmin pertenece a Administradores
y a Usuarios.
8) Elegir Herramientas/Seguridad/Permisos de usuario y de grupo...
9) Elegir lista de usuarios, seleccionar el usuario PruebasAdmin, en
el combo Tipo de objeto seleccionar Base de datos (hay que tener cuidado,
ya que está oculta antes del valor que toma por defecto: Tabla).
Hay que marcar todas las casillas de verificación.
10) Elegir en Tipo de objeto el valor Tabla, seleccionando de la lista
Nombre de objeto todas las tablas e incluyendo el valor Tablas/consultas
nuevas, marcar todas las casillas de verificación (lo mas fácil
es quitar la marca en la casilla Administrar y volvérsela a poner).
11) Elegir todos y cada uno de los tipos de objeto y hacer lo mismo
para cada uno de ellos. En este momento el usuario PruebasAdmin es dueño
y señor de todo.
12) Elegir lista de usuarios, seleccionar el usuario Administrador,
en el combo Tipo de objeto seleccionar Base de datos. Desmarcar las
casillas de verificación Abrir o Ejecutar, Abrir en modo exclusivo
y Administrar.
13) Elegir lista de grupos, seleccionar el grupo Administradores, y
hacer lo mismo del punto anterior: elegir Base de datos, desmarcar las
casillas de verificación, etc. Esto no se menciona en ninguna
ayuda oficial de las versiones 2.0, 7.0 ni 97.
14) Seleccionar ahora el grupo Usuarios, y hacer lo mismo.
La base de datos ahora es segura y se puede comprobar siguiendo los
siguientes pasos:
1) Cerrar Access.
2) Conectar al grupo de trabajo SYSTEM.MDW.
3) Entrar en Access (por defecto se entra como Administrador).
4) Intentemos abrir nuestra base de datos segura. Nos dará un
mensaje más o menos así: No tiene los permisos necesarios
para acceder al objeto, etc.
5) Intentemos crear en este SYSTEM.MDW un usuario PruebasAdmin igual
al que tenemos creado en PRUEBSEG.MDW. Recordemos que para poder entrar
con este usuario hay que poner una contraseña al usuario Administrador
de este grupo de trabajo.
6) Entrar en Access con este usuario; tampoco deja entrar.
7) Conectar a PRUEBSEG.MDW y entrar como Administrador; intentar abrir
la base de datos segura y... tampoco.
Sólo se puede acceder a ella con el usuario PruebasAdmin estando
conectados a PRUEBSEG.MDW y sólo el que conozca la contraseña
de dicho usuario podrá entrar en la misma.
Ahora podemos empezar a crear nuevos grupos de usuarios y nuevos usuarios
y empezar a otorgar permisos al uso de tablas y consultas, y formularios...
o utilizar la base de datos segura, en un entorno de Visual Basic; los
usuarios no podrán acceder a ella de ninguna otra manera.
Para hacerla aún mas segura se puede codificar.
Método 1:
La creación y el borrado de grandes cantidades de datos provoca
que los archivos MDB crezcan sin límite. Para compactar una base
de datos hay que abrir Access sin cargar ninguna base de datos y elegir
Herramientas/Utilidades de la base de datos/Compactar base de datos.
Sólo resta seleccionar la base de datos deseada y proporcionar
un nuevo nombre para ella, que será una versión compactada
de la original.
Método 2:
Como la compactación de una base de datos obliga a que la misma
no esté abierta, se puede crear una base de datos (a la que se
puede llamar Compactador.MDB) en la que introducir un código
muy sencillo para compactar nuestras bases de datos.
Se trata de crear un formulario con dos cuadros de texto a los que llamamos
Directorio y BDNombre; en el 1º se introducirá la ruta de
acceso completa a la Base de datos que se desea compactar; y en el 2º,
el nombre de la base de datos.
Crear un botón en el formulario al que llamamos BotCompactar
y en su evento Al hacer click incluir el siguiente código:
On Error GoTo Err_BotCompactar
Dim NombreBaseDatos As String
Dim NombreBaseDatosCompactada As String
Dim NombreBaseDatosTrabajo As String
If Len(Dir(Directorio, vbDirectory)) = 0 Then
MsgBox "No existe el directorio especificado.", 48
DoCmd.GoToControl "Directorio"
Exit Sub
End If
If Right$(Directorio, 1) <> "\" Then
Directorio = Directorio & "\"
End If
If Len(Dir(Directorio & BDNombre)) = 0 Then
MsgBox "En el directorio introducido no existe la base de datos.",
48
DoCmd.GoToControl "BDNombre"
Exit Sub
End If
DoCmd.Hourglass True
NombreBaseDatos = Directorio & BDNombre
NombreBaseDatosCompactada = Directorio & "C_" & BDNombre
NombreBaseDatosTrabajo = Directorio & "T_" & BDNombre
If Len(Dir(NombreBaseDatosCompactada)) > 0 Then
Kill NombreBaseDatosCompactada
End If
DBEngine.CompactDatabase NombreBaseDatos, NombreBaseDatosCompactada
If Len(Dir(NombreBaseDatosTrabajo)) > 0 Then
Kill NombreBaseDatosTrabajo
End If
Name NombreBaseDatos As NombreBaseDatosTrabajo
Name NombreBaseDatosCompactada As NombreBaseDatos
Kill NombreBaseDatosTrabajo
DoCmd.Hourglass False
MsgBox "Base de datos compactada satisfactoriamente.", vbInformation
Exit Sub
Err_BotCompactar:
If Err <> 0 Then
DoCmd.Hourglass False
MsgBox Error
End If
End Sub
La función Dir permite saber si existe un directorio o un archivo
en el ordenador o en nuestra red y devuelve una cadena de longitud cero
en caso de que no exista lo que se busca. La compactación se
debe realizar siempre sobre otra base de datos y por eso se utilizan
las funciones Name, que renombra un archivo, y Kill, que lo elimina.
De lo que se trata es de borrar los archivos cuando la operación
acabó correctamente.
Método 3:
Crear un acceso directo para cada base de datos a compactar. En el acceso
directo en el cuadro de texto Destino consignar:
"C:\Ruta\MSACCESS.EXE" "C:\Ruta\Base.mdb" /compact
En este caso habrá que modificar las rutas de acceso para cada
caso en particular.
Todo lo anterior es tal como se ha escrito, es decir, con dobles comillas
incluidas. La compactación se realiza sobre la misma base de
datos una vez que se ha completado correctamente.
La compactación de una base de datos Access 7.0 con una versión
posterior no convierte la base de datos a la nueva versión, sino
que la mantiene como Access 7.0.
· Hacer clic con el botón derecho en la vista preliminar.
· Del menú contextual elegir Varias páginas y se
presentará un submenú gráfico con iconos de páginas.
· Pasar el puntero del ratón sobre esos iconos y se irá
viendo el número de páginas que es posible ver a la vez.
· Hacer clic cuando se vea el número de páginas
deseado de entre las posibles.
Para volver a visualizar una sola página, elegir Página
del mismo menú contextual.
Si se hace doble clic sobre un elemento en la ventana de la base de
datos, se abre la vista de hoja de datos (la tabla si es un elemento
de tabla, el formulario si es un elemento de formulario, etc.), pero
se puede forzar que se abrir la vista de diseño si se mantiene
pulsada la tecla CONTROL mientras se hace el doble clic.
Cuando se protege una base de datos se suele hacer uso de una macro
Autoexec o bien de las opciones de Herramientas/Inicio, según
las versiones de Access. Sin embargo, se puede volver a tomar el control
manteniendo pulsada la tecla MAYUSCULAS mientras se abre el archivo
MDB.
A partir de la versión 7.0 se puede inhabilitar el uso de dicha
tecla estableciendo una nueva propiedad llamada AllowBypassKey, la cual
debe ser añadida a la base de datos y asignarla el valor True
(Verdadero) o False (Falso). Cuando es False, la tecla MAYUSCULAS queda
inhabilitada, y cuando es True, queda habilitada. Esta propiedad se
puede establecer usando una macro o Visual Basic.
Para establecer la propiedad AllowBypassKey usando una macro o Visual
Basic, se debe hacer usando el método CreateProperty y anexarla
a la colección Properties del objeto Database.
Cuando se depure una aplicación, hay que asegurarse de que la
propiedad AllowBypassKey está establecida a True.
Los valores de esta propiedad no son efectivos hasta la próxima
vez que se abre la base de datos.
Ejemplo:
Sub SetBypass(rbFlag As Boolean)
On Error GoTo SetBypass_Error
Dim db As DATABASE
Set db = CurrentDb
db.Properties!AllowBypassKey = rbFlag
SetByPass_Exit:
Exit Sub
SetBypass_Error:
If Err = 3270 Then 'La propiedad AllowBypassKey no existe
db.Properties.Append db.CreateProperty("AllowBypassKey", dbBoolean,
rbFlag)
Resume Next
Else
'Algún otro error
MsgBox "Error inesperado: " & Error$ & " ("
& Err & ")"
Resume SetByPass_Exit
End If
End Sub
Este procedimiento tiene un argumento booleano. Se establece la propiedad
AllowBypassKey igual al argumento rbFlag. Si la propiedad no existe,
se implementa el error 3270, de forma que el procedimiento cree y añada
la propiedad a la colección de propiedades de la base de datos.
Insertar la fecha actual CONTROL - ; (signo punto y coma)
Insertar la hora actual CONTROL - : (signo 2 puntos)
Añadir un nuevo registro CONTROL - + (signo suma)
Borrar un registro CONTROL - -- (signo resta o guión)
Copiar el valor del campo a rellenar con el valor del registro anterior
CONTROL - ' (signo apóstrofe)
Usar un valor por defecto para un campo CONTROL-ALT-ESPACIO
Grabar todos los cambios MAYUSCULAS-INTRO
Activar la barra de menúes F10
Seleccionar la siguiente barra de herramientas CONTROL-TAB
Seleccionar la anterior barra de herramientas CONTROL-MAYUSCULAS-TAB
Seleccionar el botón siguiente cuando la barra de herramientas
está activa TAB
Seleccionar el botón anterior cuando la barra de herramientas
está activa MAYUSCULAS-TAB
Desplegar un cuadro combinado F4 o ALT-FLECHA ABAJO
Actualizar el contenido de un cuadro de lista o cuadro combinado F9
Ciclo entre ventanas abiertas CONTROL-F6
Restaurar la ventana seleccionada cuando todas están minimizadas
INTRO
Mostrar el menú de control ALT-ESPACIO
Mostrar la dirección completa para un hipertexto F2
Insertar retornos de línea en cuadros de texto CONTROL-INTRO
Conmutador de depuración en el modo de edición de código
CONTROL-G
· Nueva característica snapshot, que permite visualizar
un informe sin tener Access 97 instalado. El informe se puede ver tal
y como aparece en la vista preliminar de Access. Con esta nueva función
es posible guardar una imagen estática de un informe de Access
97 en un formato de archivo con extensión SNP. Luego ese archivo
se puede distribuir libremente a cualquier usuario aunque no disponga
de Access 97. Para visualizarlo, basta con disponer del Microsoft Access
Snapshot Viewer. Si se obtuvo la actualización SR1 en un CD-ROM,
este archivo se encuentra en la carpeta \VALUPACK\ACCESS. Si la actualización
se obtuvo a través de Internet, el visor se encuentra con el
nombre SNPVW80.EXE en la Web de Microsoft.
· Resueltos ciertos problemas con fechas húngaras.
· Las réplicas se volvían inutilizables cuando
los módulos de la base de datos principal se replican en serie.
· Los gráficos no se mostraban correctamente cuando se
abría un informe desde la ventana de la base de datos.
· El control ActiveX asociado a un objeto OLE actualizaba incorrectamente
los datos.
· Aparecían filas duplicadas en la tabla del sistema MsysRelationships
de una base de datos back-end cuando el front-end estaba bajo el control
del código fuente.
· En bases de datos creadas por asistente, se encontraban objetos
del asistente o de la base de datos de ejemplo en la base de datos final.
· Los caracteres ANSI altos no se mostraban correctamente en
la pantalla de entrada al programa bajo Windows NT 4.0.
· Se producía un fallo de protección interno en
MSACCESS.EXE al usar el asistente de bases de datos en Windows NT 4.0
Workstation al ejecutar la instalación desde un servidor de una
red Novell 4.1x.
· El motor de bases de datos Microsoft Jet consumía espacio
en disco con las consultas temporales en una transacción explícita.
· La sentencia SELECT retornaba resultado erróneo cuando
una una tabla tenía múltiples índices de campos
en la versión japonesa.
· Los objetos binarios de gran tamaño se podían
perder cuando los errores de sincronización se corregían
en las bases de datos replicadas.
· Se producía un error del tipo "Tabla TMPXXXXX ya
existe" al abrir
una tabla SQL asociada.
· Se producía un error de falta de memoria al iniciar
Access en un PC con 1 Gb o más de RAM.
· Un PC con procesador dual se bloqueaba al ejecutar una consulta
y ha sido corregido.
· Ya se puede ejecutar SETUP.EXE /Y /R bajo Windows NT 4.0 con
NTFS.
· Solucionado un error de falta de memoria al imprimir subformularios
en Windows NT 4.0.
· Solucionados errores de no poder abrir la ventana de zoom.
· Solucionado error de desbordamiento al exportar un informe
a formato RTF.
· Los cambios en los datos son guardados en el registro correcto.
Anteriormente se producía cierto tipo de error en algunas circunstancias.
· Solucionados ciertos problemas relacionados con el año
2000.
· El desplazamiento del ratón Intellimouse era errático
en formularios y tablas, y se ha solucionado.
Nota: Para poder instalar la actualización de Office 97 SR2 es
preciso haber instalado previamente la actualización SR1.
· Crear una tabla dias con dos campos: [numdia] de tipo numérico
cuyo valor inicial es 0 y [fecha] de tipo fecha/hora.
· Hacer que el formulario principal del programa se ejecute al
inicio automáticamente y, en su evento Al cargar, insertar este
código:
Dim db As Database, r As Recordset, sql
As String
Dim mensaje As String, titulo As String
sql = "Select * From dias"
Set db = CurrentDb()
Set r = db.OpenRecordset(sql)
If r.RecordCount = 0 Then ' Si la primera vez no existe el registro
se inserta
r.AddNew
r![numdia] = 1
r![FECHA] = Date
r.Update
Else
If r![numdia] >= 7 Then 'Se comprueba si se ha utilizado 7 días
la base de datos
mensaje = "Se han superado los 7 días de la demo"
titulo = "Demo"
MsgBox mensaje, 48, titulo
DoCmd.Quit 'Cerrar Access
Else
If r![FECHA] <> Date Then 'Se comprueba si hoy ya se ha utilizado
la base de datos
r.Edit
r![numdia] = r![numdia] + 1
r![FECHA] = Date
r.Update
End If
End If
End If
Al ejecutar Access es posible que aparezca el mensaje de error anterior.
Se produce porque Access no está correctamente registrado en
esa máquina. Al iniciarse, Access busca la siguiente entrada
en el registro de Windows:
HKEY_CLASSES_ROOT\Licences\B54DCF20-5F9C-101B-AF4E-00AA003F0F07
Si esta entrada no se encuentra se produce el mensaje de error. Para
solucionarlo hay que ejecutar el programa de instalación de Access
con el parámetro /y para volver a añadir las entradas
en el registro.
· Crear una tabla en Access con al menos 2 columnas: nombre
de la persona y su localidad (por ejemplo)
· Abrir la tabla y elegir de la barra de menúes Herramientas/Vínculos
de Office/Combinar con MS Word. Se abrirá Word y dará
a elegir si se desea abrir un documento existente o si prefiere crear
uno nuevo. Supondremos el segundo caso.
· Crear un documento en Word con marcadores, donde los datos
de Access serán colocados. Por ejemplo:
Estimado <<Nombre_Persona>>.
Aquí iría el texto de la carta
Atentamente,
Nuestra firma
Lo que va entre ángulos es lo que se denomina marcadores y se
puede conseguir pulsando el botón de Word Insertar campo de combinación,
que es el primero de la barra de herramientas Combinar correspondencia.
Esta barra se despliega automáticamente. En el menú que
despliega el botón mencionado estarán como opciones todos
los campos de la base de datos de Access.
· Una vez el documento esté terminado, pulsar el botón
Combinar correspondencia en Word. Del cuadro que aparece (llamado Combinar
correspondencia y que muestra 3 pasos), pulsar el botón Combinar
del paso tercero y en el siguiente cuadro que aparece (llamado Combinar),
pulsar Combinar.
Word creará un documento nuevo con tantas páginas como
registros haya en la tabla de Access.
Si lo que se pretende crear es una hoja de etiquetas, en el paso primero
del cuadro Combinar correspondencia que aparece en Word, pulsar el botón
Crear y elegir la opción al efecto.
Si lo que se pretende es enviar la carta como mensaje de correo electrónico
o enviarlo por fax, en el cuadro Combinar de Word desplegar el menú
desplegable Combinar en y elegir la opción Correo electrónico.
El botón Configuración que hay a su derecha permite seleccionar
el campo de la tabla de Access que contiene la dirección de correo
electrónico o número de fax.
Cuando se efectúan búsquedas en Access no solemos reparar
en el modo de búsqueda, sino que rápidamente escribimos
el texto a buscar y cuando aparece el mensaje de que no ha habido hallazgos,
nos damos cuenta (peor si no nos la damos) de que el modo de búsqueda
estaba establecido para Hacer coincidir todo el campo cuando en realidad
nosotros queríamos el modo Cualquier parte del campo o Comienzo
del campo.
Para evitar esto, elegir Herramientas/Opciones de la barra de menúes,
acceder a la ficha Modificar/Buscar y seleccionar el botón de
opción que se desea dentro del apartado Comportamiento predeterminado
de Buscar y Reemplazar. La primera de las 3 opciones es Búsqueda
rápida y se corresponde con el modo de búsqueda Hacer
coincidir todo el campo, o sea, búsqueda exacta. La segunda es
Búsqueda general y se corresponde con el modo de búsqueda
Cualquier parte del campo. Por último, la tercera opción
es Búsqueda en inicio de campo y se corresponde con el modo de
búsqueda Comienzo del campo. La opción predeterminada
en Access es siempre la primera, lo cual no siempre garantiza éxitos
en las búsquedas
Cuando existe una macro llamada Autoexec, Access la ejecuta automáticamente
al abrirse el archivo de la base de datos. En todas las versiones de
Access se puede evitar su ejecución pulsando la tecla MAYUSCULAS
durante el proceso de apertura del archivo (se exceptúa el procedimiento
especial que se comenta en el truco nº 12).
Desde Access 97 se puede hacer uso en la línea de comandos de
Access de un nuevo parámetro llamado /NOSTARTUP que también
impide la ejecución de la macro Autoexec, así como de
todas aquellas opciones de inicio que se hayan especificado al elegir
Herramientas/Inicio. Por ejemplo, para abrir una base de datos con este
parámetro, la línea de comando de Access quedaría
así:
msaccess.exe /nostartup "c:\bases\basedato.mdb"
Si se desea desactivar una línea de ejecución de una
macro, basta con especificar la palabra False en la columna Condición.
Esto puede ser interesante para propósitos de pruebas y de depuración
de errores, ya que se pueden desactivar líneas sin necesidad
de eliminarlas.
Si existiera ya una condición previa, se puede introducir False
and al principio, con lo cual todo el resto queda anulado.
|