Bloque VI · Tema 6 · Cuerpo General Administrativo de la Administración del Estado
Numeración del programa oficial (Informática básica y ofimática). En nuestro temario es el tema 43 de 45.
Bases de datos: Access 365. Principales funciones y utilidades. Tablas. Consultas. Formularios. Informes. Relaciones. Importación, vinculación y exportación de datos
Tema desarrollado para el ejercicio único del Cuerpo General Administrativo de la Administración del Estado (subgrupo C1, ingreso libre). Es el tema 6 del bloque VI, «Informática básica y ofimática», en la redacción del programa de la convocatoria de 18 de diciembre de 2025 (BOE-A-2025-26262), que fija Access de Microsoft 365 como versión de referencia. Los nombres de los objetos, propiedades y funciones son los de Access para Windows en español, y los límites técnicos se han comprobado en la página de especificaciones de Access de Microsoft a octubre de 2026.
Índice
- 1. Qué pide este tema y cómo lo pregunta el tribunal
- 2. Bases de datos y sistemas gestores de bases de datos
- 3. Access de Microsoft 365: concepto, archivos y objetos
- 4. El entorno de trabajo de Access
- 5. Tablas: diseño, tipos de datos y propiedades
- 6. Claves e índices
- 7. Relaciones e integridad referencial
- 8. Consultas
- 9. Criterios, expresiones, funciones y SQL
- 10. Formularios
- 11. Informes
- 12. Importación, vinculación y exportación de datos
- 13. Mantenimiento, seguridad y personalización
- 14. Supuestos prácticos resueltos
- 15. Trampas habituales
- 16. Esquema de repaso
- 17. Ideas fuerza y enlace con el resto del temario
1. Qué pide este tema y cómo lo pregunta el tribunal
Access es el gestor de bases de datos de escritorio de Microsoft 365. En una oficina se usa para manejar información que una hoja de cálculo ya no gestiona bien: un registro de expedientes con sus interesados y sus trámites, un inventario, una base de datos de contactos o de ayudas concedidas. El programa pide conocer sus principales funciones y sus seis piezas: tablas, consultas, formularios, informes, relaciones e importación, vinculación y exportación de datos.
Es el tema de ofimática con preguntas más técnicas. El tribunal suele dar una propiedad, una regla o una expresión y pedir su efecto. Algunos ejemplos con su respuesta oficial:
- La regla de validación >=Fecha() en un campo de fecha impide introducir fechas anteriores al día actual (2019 y 2022).
- El criterio [Fecha de Alta] en una consulta hace que aparezca la ventana «Introduzca el valor del parámetro» (2025).
- El contenido del encabezado del informe aparece solo en la primera página (2024, extraordinaria).
- Una consulta de actualización cambia valores en registros existentes y una de datos anexados agrega registros (2025 y 2022).
- La propiedad que impide repetir valores en un campo es Indexado: Sí (Sin duplicados) (2025, extraordinaria).
- Las relaciones entre tablas sirven para mantener la integridad de los datos (2022).
- Un informe puede crearse a partir de tablas y consultas (2024).
Para estudiarlo conviene crear una pequeña base de datos de prueba (por ejemplo, expedientes e interesados) y practicar en ella cada objeto: lo que parece abstracto en el papel se entiende en diez minutos con Access abierto.
2. Bases de datos y sistemas gestores de bases de datos
2.1. Conceptos
Una base de datos es un conjunto organizado de datos relacionados entre sí, almacenados de forma que puedan consultarse y actualizarse con facilidad y sin repeticiones innecesarias. El programa que la crea y gestiona es el sistema gestor de bases de datos (SGBD): controla el almacenamiento, el acceso concurrente de varios usuarios, la seguridad, la integridad de los datos y las copias. Son SGBD, por ejemplo, Microsoft SQL Server (respuesta de una pregunta de 2019), Oracle Database, MySQL, MariaDB, PostgreSQL (respuesta de una pregunta de 2024 sobre el producto destinado a crear y gestionar una base de datos) y el propio Access.
2.2. El modelo relacional
Access, como la mayoría de los SGBD, sigue el modelo relacional, que organiza los datos en tablas relacionadas entre sí:
- Una tabla recoge los datos de un tipo de entidad: interesados, expedientes, unidades.
- Cada fila es un registro: un interesado concreto.
- Cada columna es un campo: el NIF, el nombre, la fecha de alta.
- La clave principal identifica cada registro de forma única (el número de expediente).
- Una clave externa es un campo de una tabla que guarda la clave principal de otra para relacionarlas (en la tabla de expedientes, el NIF del interesado).
La ventaja frente a una hoja de cálculo es que cada dato se guarda una sola vez: los datos de un interesado están en su tabla y cada expediente solo guarda su identificador. Si el interesado cambia de domicilio, se corrige en un único sitio. Repartir así los datos en tablas para evitar repeticiones se llama normalización.
2.3. El lenguaje SQL
Las bases de datos relacionales se consultan con el lenguaje SQL (Structured Query Language), un estándar con órdenes como SELECT (consultar), INSERT (añadir), UPDATE (modificar) y DELETE (borrar). Access genera el SQL de cada consulta que se diseña de forma gráfica, y permite verlo y editarlo (epígrafe 9).
2.4. Cómo se diseña una base de datos
Antes de abrir Access hay que pensar el diseño, porque corregir una estructura mal planteada cuando ya tiene miles de registros es muy costoso. Los pasos habituales son:
- Determinar la finalidad: qué información se necesita y qué preguntas deberá responder (cuántas solicitudes por provincia, qué expedientes vencen este mes).
- Identificar las entidades, cada una de las cuales será una tabla: interesados, solicitudes, unidades, tipos de ayuda.
- Definir los campos de cada tabla, dividiendo la información en sus partes más pequeñas útiles (nombre y apellidos por separado, calle, código postal y municipio por separado) y sin campos calculables a partir de otros, como la edad, que se deduce de la fecha de nacimiento.
- Elegir la clave principal de cada tabla.
- Establecer las relaciones entre las tablas y sus claves externas.
- Revisar el diseño aplicando las reglas de normalización y probarlo con datos de ejemplo.
La normalización se expresa en las llamadas formas normales. Sin entrar en su definición formal, sus ideas básicas son tres: cada campo contiene un único valor, no una lista (primera forma normal); todos los campos de una tabla dependen de toda su clave principal (segunda); y no hay campos que dependan de otros campos que no son clave, como guardar el nombre de la unidad en la tabla de expedientes cuando basta con su código (tercera). Cumplirlas evita la redundancia y las incoherencias.
2.5. ¿Access o Excel?
Las dos aplicaciones guardan datos en filas y columnas, y el tribunal puede preguntar cuándo conviene cada una:
| Mejor en Excel | Mejor en Access |
|---|---|
| Cálculos, análisis numéricos, hipótesis y gráficos | Información con varias entidades relacionadas (interesados, solicitudes, trámites) |
| Una lista sencilla, plana, de pocos miles de filas | Muchos registros que crecen de forma continua |
| Una o pocas personas que trabajan sobre el mismo cuadro | Varias personas que introducen datos a la vez mediante formularios |
| Informes ad hoc, que cambian cada vez | Informes y listados fijos que se repiten periódicamente |
| Datos sin reglas estrictas | Datos que deben cumplir reglas (tipos, validaciones, integridad referencial) |
A menudo se usan juntas: los datos se mantienen en Access y se exportan o vinculan a Excel para analizarlos.
3. Access de Microsoft 365: concepto, archivos y objetos
3.1. Qué es Access
Access es un SGBD relacional de escritorio que reúne en un mismo programa la base de datos y las herramientas para usarla: formularios para introducir datos, consultas para buscarlos e informes para imprimirlos, sin necesidad de programar. Forma parte de las suscripciones de Microsoft 365 para empresas y de algunas ediciones de Office, y solo existe para Windows: no hay versión para Mac ni para la web. Es adecuado para bases de datos pequeñas y medianas con pocos usuarios simultáneos; para muchos usuarios o grandes volúmenes, las organizaciones usan servidores como SQL Server, a los que Access puede conectarse.
3.2. Archivos
| Extensión | Qué es |
|---|---|
| .accdb | Base de datos de Access, el formato desde Access 2007. Contiene todos los objetos en un único archivo |
| .accde | Base de datos compilada, en la que no se puede ver ni modificar el código VBA ni el diseño de formularios e informes; se distribuye a los usuarios finales |
| .accdt | Plantilla de base de datos |
| .mdb | Formato de Access 2003 y anteriores |
| .laccdb | Archivo de bloqueo temporal que Access crea mientras la base de datos está abierta, para controlar el acceso de varios usuarios |
3.3. Límites
Según las especificaciones oficiales de Microsoft:
- Una base de datos puede ocupar como máximo 2 GB (menos el espacio de los objetos del sistema).
- Los nombres de los objetos (tablas, consultas…) y de los campos tienen como máximo 64 caracteres (pregunta de 2022).
- Una tabla puede tener hasta 255 campos.
- Un campo de Texto corto admite hasta 255 caracteres; uno de Texto largo, 65.535 desde la interfaz y alrededor de 1 GB por programación.
- Una tabla puede tener hasta 32 índices, y un índice o una clave principal, hasta 10 campos.
- Una regla de validación puede tener hasta 2.048 caracteres.
En la pregunta de 2025 sobre el tamaño máximo que puede almacenar un campo de tipo Datos adjuntos, la respuesta oficial fue «hasta 2 GB», que es el límite de toda la base de datos en la que se guardan los archivos adjuntos.
3.4. Los objetos de una base de datos
| Objeto | Para qué sirve |
|---|---|
| Tablas | Almacenan los datos. Son el único objeto que guarda datos; los demás los usan |
| Consultas | Seleccionan, combinan, calculan o modifican datos de una o varias tablas |
| Formularios | Sirven para introducir, modificar y consultar datos en pantalla de forma cómoda |
| Informes | Presentan los datos con formato para imprimirlos o exportarlos, con agrupaciones y totales |
| Macros | Automatizan tareas encadenando acciones predefinidas, sin escribir código |
| Módulos | Contienen código en el lenguaje Visual Basic para Aplicaciones (VBA) (pregunta de 2022) |
4. El entorno de trabajo de Access
Al abrir Access aparece la pantalla de inicio con la opción Base de datos en blanco, las plantillas (contactos, activos, tareas…) y las bases de datos recientes. Una base de datos nueva se guarda en el momento de crearla: hay que darle nombre y ubicación antes de empezar, y a partir de ahí Access guarda automáticamente los datos de cada registro al pasar al siguiente (lo que sí hay que guardar son los cambios de diseño de los objetos).
La ventana tiene la cinta de opciones, el panel de navegación a la izquierda (con todos los objetos de la base de datos, agrupados por tipo; se muestra u oculta con F11), el área de trabajo, en la que los objetos abiertos aparecen como pestañas, y la barra de estado con los botones de vista. Las fichas principales son:
- Archivo: Nuevo, Abrir, Información (Compactar y reparar, cifrar con contraseña), Guardar como, Imprimir, Opciones.
- Inicio: vistas, portapapeles, ordenar y filtrar, registros (nuevo, guardar, eliminar, totales, ortografía), buscar y formato de texto.
- Crear: plantillas, tablas (Tabla, Diseño de tabla, Listas de SharePoint), consultas (Asistente para consultas, Diseño de consulta), formularios, informes, macros y código.
- Datos externos: importar y vincular, y exportar.
- Herramientas de base de datos: Compactar y reparar base de datos, Visual Basic, ejecutar macro, Relaciones, dependencias de objetos, analizar rendimiento y tablas, mover datos (Base de datos de Access, es decir, el Divisor de bases de datos; SQL Server) y complementos.
Al abrir un objeto aparecen fichas contextuales: Campos y Tabla en la hoja de datos; Diseño de tabla, Diseño de consulta, Diseño de formulario o Diseño de informe en la vista Diseño.
Cada objeto tiene varias vistas, que se cambian con el botón Ver de la ficha Inicio o los botones de la barra de estado: la tabla, Hoja de datos y Diseño; la consulta, Hoja de datos, Diseño y SQL; el formulario, Formulario, Presentación y Diseño; el informe, Informe, Vista preliminar, Presentación y Diseño.
El cuadro Información (antes «Tell Me», «¿Qué desea hacer?») de la barra de título busca comandos y ayuda escribiendo lo que se quiere hacer; la pregunta de 2022 sobre Access 2019 recogía como correcta que había mejorado esa caja.
5. Tablas: diseño, tipos de datos y propiedades
5.1. Crear una tabla
Una tabla se crea desde la ficha Crear:
- Tabla: abre una tabla nueva en vista Hoja de datos, en la que se escriben los datos y Access deduce los tipos; se añaden campos con «Haga clic para agregar».
- Diseño de tabla: abre la vista Diseño, en la que se define cada campo con su nombre, su tipo de datos, una descripción opcional y, en la parte inferior, sus propiedades. Es la forma recomendada de diseñar una tabla con cuidado.
- Importando o vinculando datos externos (epígrafe 12).
En la vista Hoja de datos se trabaja con los registros como en una hoja de cálculo: se añaden (la última fila, marcada con un asterisco, es el registro nuevo), se modifican, se eliminan, se ordenan y se filtran. El selector de registro, a la izquierda, muestra un lápiz mientras se edita un registro que aún no se ha guardado. Los botones de desplazamiento de la parte inferior permiten ir al primer, anterior, siguiente o último registro, escribir un número de registro o buscar.
5.2. Tipos de datos
| Tipo | Qué guarda |
|---|---|
| Texto corto | Texto o combinaciones de texto y números que no se usan para calcular (nombres, NIF, códigos postales, teléfonos), hasta 255 caracteres |
| Texto largo | Textos extensos, como observaciones; admite texto enriquecido |
| Número | Números con los que se calcula; su tamaño (Byte, Entero, Entero largo, Simple, Doble, Decimal) se elige en la propiedad Tamaño del campo |
| Número grande | Enteros muy grandes |
| Fecha/Hora y Fecha/Hora extendida | Fechas y horas; la extendida admite más precisión y un intervalo mayor |
| Moneda | Importes, con cuatro decimales de precisión, sin errores de redondeo |
| Autonumeración | Un número único que Access asigna solo a cada registro nuevo, consecutivo o aleatorio; no se puede modificar. Es la clave principal más habitual |
| Sí/No | Dos valores: sí o no, verdadero o falso, activado o desactivado (casilla) |
| Objeto OLE | Objetos de otros programas incrustados o vinculados (tipo antiguo) |
| Hipervínculo | Direcciones web, de correo o de archivos |
| Datos adjuntos | Uno o varios archivos (documentos, imágenes) adjuntos a cada registro |
| Calculado | El resultado de una expresión con otros campos de la misma tabla |
| Asistente para búsquedas | No es un tipo en sí: crea un campo cuyo valor se elige de una lista, fija o tomada de otra tabla |
Elegir bien el tipo importa: un NIF o un código postal son Texto corto aunque tengan números (no se calcula con ellos y el código 08001 perdería el cero inicial como número); un importe es Moneda; una fecha es Fecha/Hora, para poder ordenar y calcular plazos.
5.3. Propiedades de los campos
En la vista Diseño, cada campo tiene propiedades en la pestaña General (y en Búsqueda, para las listas). Las principales:
| Propiedad | Qué hace |
|---|---|
| Tamaño del campo | El número máximo de caracteres de un texto (hasta 255) o el subtipo de número |
| Formato | Cómo se muestra el dato, sin cambiar lo guardado: para números, Número general, Moneda, Euro, Fijo, Estándar, Porcentaje, Científico; para fechas, Fecha general, larga, mediana o corta |
| Lugares decimales | Los decimales que se muestran |
| Máscara de entrada | Un modelo que guía la escritura y obliga a un patrón (por ejemplo, un código postal de cinco dígitos o un teléfono) |
| Título | El texto que aparece como encabezado de la columna y en las etiquetas de los formularios, si es distinto del nombre del campo |
| Valor predeterminado | El valor que se escribe automáticamente en cada registro nuevo, por ejemplo =Fecha() en una fecha de alta |
| Regla de validación | Limita los valores que pueden introducirse en el campo (preguntas de 2019 y 2022) |
| Texto de validación | El mensaje que aparece cuando se incumple la regla |
| Requerido | Si es Sí, el campo no puede dejarse vacío |
| Permitir longitud cero | Si un texto puede guardarse como cadena vacía ("") |
| Indexado | No; Sí (Con duplicados); Sí (Sin duplicados), que impide repetir valores |
Sobre el Formato: el número 2345,68 se muestra como 2.345,68 con el formato Estándar (separador de miles y dos decimales, sin símbolo), como 2.345,68 € con Moneda o Euro, como 2345,68 con Fijo y como 2,35E+03 con Científico. Fue pregunta en 2025.
5.4. Reglas de validación
Una regla de validación es una expresión que debe cumplir el valor del campo; si no la cumple, Access no deja guardar y muestra el texto de validación. Ejemplos que ha usado el tribunal:
| Regla | Efecto |
|---|---|
| >=Fecha() | Impide introducir fechas anteriores al día actual (Fecha() devuelve la fecha de hoy) |
| >=#01/01/2024# | Solo admite fechas a partir del 1 de enero de 2024. Las fechas literales se escriben entre almohadillas (#) |
| Longitud([Texto01])<10 | Impide escribir más de 9 caracteres en el campo (como regla de la tabla, en su hoja de propiedades) |
| >0 Y <=100 | Un número mayor que 0 y no mayor que 100 |
| "Madrid" O "Barcelona" | Solo uno de esos dos valores |
| Como "28*" | Un texto que empiece por 28 |
Hay reglas de campo, que solo comprueban ese campo, y una regla de tabla (o de registro), en la hoja de propiedades de la tabla, que puede comparar varios campos: [FechaFin]>=[FechaInicio].
5.5. Trabajar en la hoja de datos
En la vista Hoja de datos de una tabla o una consulta, la ficha Inicio ofrece:
- Ordenar ascendente o descendente por una columna, y quitar el orden.
- Filtrar: con la flecha del encabezado de la columna (valores, filtros de texto, número o fecha); con Selección, que filtra por el valor de la celda activa («igual a», «distinto de», «contiene»); con Filtro por formulario, en el que se escriben los criterios en una fila en blanco; o con el Filtro avanzado, que abre una cuadrícula como la de las consultas. El botón Alternar filtro lo activa y desactiva. El filtro no borra registros y puede guardarse como consulta.
- Buscar y Reemplazar valores en un campo o en toda la tabla.
- Totales (en el grupo Registros): añade una fila al pie con la suma, el promedio, la cuenta, el máximo o el mínimo de cada columna.
- Ocultar, mostrar, inmovilizar y cambiar el ancho de las columnas, y cambiar la fuente y el color de las filas alternas.
Los campos multivalor, que permiten elegir varios valores de una lista en un mismo campo (por ejemplo, varios idiomas de un intérprete), son cómodos pero rompen la regla de un valor por campo y complican las consultas y la exportación; en un diseño correcto suele preferirse una tabla relacionada.
6. Claves e índices
6.1. La clave principal
La clave principal es el campo, o la combinación de campos, que identifica de forma única cada registro de la tabla. No puede repetirse ni quedar vacía (no admite valores nulos). Se asigna en la vista Diseño con el botón Clave principal (aparece una llave junto al campo). Access propone, al crear una tabla, un campo Id de tipo Autonumeración como clave.
- Una clave simple tiene un solo campo (el número de expediente, el NIF).
- Una clave compuesta tiene dos o más campos, y lo que debe ser único es la combinación de sus valores, no cada uno por separado (pregunta de 2025, extraordinaria). Por ejemplo, en una tabla de asistencia a cursos, la clave puede ser Curso + Alumno: un alumno puede aparecer en varios cursos, pero no dos veces en el mismo. Se crea seleccionando los campos con Ctrl antes de pulsar Clave principal.
6.2. Índices
Un índice acelera las búsquedas, la ordenación y las combinaciones por un campo, como el índice de un libro. Se crea con la propiedad Indexado: «Sí (Con duplicados)» solo acelera; «Sí (Sin duplicados)» además garantiza que no se repitan valores en ese campo, que fue la respuesta de una pregunta de 2025. La clave principal está siempre indexada sin duplicados. Indexar todos los campos no conviene: los índices ocupan espacio y ralentizan las altas y modificaciones.
7. Relaciones e integridad referencial
7.1. Para qué sirven
Las relaciones unen dos tablas a través de un campo común, normalmente la clave principal de una y la clave externa de la otra. Sirven para combinar datos de varias tablas en consultas, formularios e informes y, sobre todo, para mantener la integridad de los datos (pregunta de 2022): que no haya, por ejemplo, expedientes de interesados que no existen.
7.2. Tipos de relación
- Uno a varios (1:N), la más habitual: un interesado puede tener varios expedientes y cada expediente pertenece a un interesado. La tabla del lado «uno» aporta su clave principal y la del lado «varios» la guarda como clave externa.
- Uno a uno (1:1): a cada registro de una tabla le corresponde como mucho uno de la otra; se usa para separar datos de acceso restringido.
- Varios a varios (N:M): un expediente puede tramitarse en varias unidades y cada unidad tramita muchos expedientes. Access no la representa directamente: se crea una tabla de unión (Expediente-Unidad) con dos relaciones uno a varios.
7.3. La ventana Relaciones
En Herramientas de base de datos > Relaciones se añaden las tablas y se crea cada relación arrastrando el campo de una tabla sobre el campo correspondiente de la otra. En el cuadro Modificar relaciones se puede marcar:
- Exigir integridad referencial: Access impide introducir en la tabla secundaria un valor de clave externa que no exista en la principal, y eliminar un registro principal que tenga registros relacionados. La línea de la relación muestra entonces un 1 y un ∞ en sus extremos. Para exigirla, los campos deben tener el mismo tipo de datos.
- Actualizar en cascada los campos relacionados: si cambia la clave principal, se cambia también en los registros relacionados.
- Eliminar en cascada los registros relacionados: al eliminar un registro principal, se eliminan todos sus registros relacionados. Es una opción potente y peligrosa.
El botón Tipo de combinación define qué registros se muestran por defecto al combinar las tablas en una consulta: solo los que coinciden en ambas (combinación interna, la predeterminada) o todos los de una de ellas aunque no tengan pareja en la otra (combinaciones externas izquierda o derecha).
8. Consultas
8.1. Qué es una consulta
Una consulta es una pregunta a la base de datos: selecciona los campos y registros que interesan de una o varias tablas (o de otras consultas), con criterios, orden y cálculos. Su resultado, la hoja de respuestas dinámica, no es una copia: muestra los datos actuales de las tablas cada vez que se ejecuta, y en muchos casos permite modificarlos. Las consultas se crean desde Crear > Asistente para consultas o Crear > Diseño de consulta.
8.2. La cuadrícula de diseño
En la vista Diseño, la parte superior muestra las tablas con sus relaciones y la inferior, la cuadrícula (QBE), con una columna por campo y estas filas:
- Campo: el campo o una expresión calculada.
- Tabla: de qué tabla procede.
- Orden: ascendente o descendente.
- Mostrar: si el campo aparece en el resultado (puede usarse un campo para filtrar sin mostrarlo).
- Criterios y O: las condiciones. Las escritas en la misma fila deben cumplirse a la vez (Y); las escritas en filas distintas son alternativas (O).
Se ejecuta con el botón Ejecutar (el signo de exclamación) o cambiando a la vista Hoja de datos.
8.3. Tipos de consultas
| Tipo | Qué hace |
|---|---|
| Selección | La más común: muestra los datos que cumplen los criterios, sin modificarlos |
| Parámetros | Pide un valor al ejecutarse: el criterio se escribe entre corchetes con un texto que no es nombre de campo, como [Fecha de Alta], y aparece la ventana «Introduzca el valor del parámetro» con ese texto (pregunta de 2025) |
| Totales | Con el botón Totales (Σ) aparece la fila Total, para agrupar (Agrupar por) y calcular Suma, Promedio, Cuenta, Máx, Mín… por grupos: el número de expedientes por unidad |
| Tabla de referencias cruzadas | Resume los datos en un cuadro de doble entrada, con un campo en filas, otro en columnas y un valor calculado en las intersecciones, como una tabla dinámica |
| Consultas de acción | Modifican la base de datos: agregan, actualizan o eliminan registros o crean tablas (pregunta de 2024) |
Las cuatro consultas de acción son:
- Creación de tabla: crea una tabla nueva con el resultado de la consulta.
- Datos anexados: agrega registros a una tabla existente (pregunta de 2022).
- Actualización: cambia valores en registros existentes, por ejemplo subir un 2 % todas las tarifas (pregunta de 2025, extraordinaria).
- Eliminación: borra los registros que cumplen los criterios.
Sus cambios no se pueden deshacer, por lo que Access avisa antes de ejecutarlas y conviene comprobar antes los registros afectados con una consulta de selección y tener una copia de seguridad. En el panel de navegación se distinguen por un icono con un signo de exclamación.
El Asistente para consultas ofrece también la consulta de búsqueda de duplicados (registros con valores repetidos en un campo) y la de búsqueda de no coincidentes (registros de una tabla sin relacionados en otra, como interesados sin expedientes).
8.4. Consultas sobre varias tablas
Para combinar datos de varias tablas se añaden todas a la parte superior del diseño de la consulta (botón Agregar tablas). Si existen relaciones en la ventana Relaciones, Access las muestra automáticamente como líneas de combinación; si no, se crean arrastrando el campo común de una tabla a la otra, solo para esa consulta. Después se arrastran a la cuadrícula los campos de cualquiera de las tablas. Por ejemplo, una consulta con Interesados y Solicitudes puede mostrar el nombre del interesado (de una tabla) junto a la fecha y el estado de cada solicitud (de la otra).
Si se añaden dos tablas sin ninguna combinación entre ellas, el resultado es el producto cartesiano: cada registro de una tabla combinado con cada registro de la otra, normalmente miles de filas sin sentido. Es un error típico al diseñar consultas.
Al hacer doble clic en la línea de combinación se elige su tipo: interna (solo los registros con pareja en las dos tablas) o externa (todos los registros de una de ellas, tengan o no pareja). Para listar todos los interesados, incluidos los que aún no tienen solicitudes, hace falta una combinación externa.
9. Criterios, expresiones, funciones y SQL
9.1. Criterios
| Criterio | Selecciona |
|---|---|
| "Madrid" | Los registros cuyo valor es Madrid |
| <>"Madrid" o Negado "Madrid" | Los que no son Madrid |
| >1000 | Los mayores que 1.000 |
| Entre #01/01/2026# Y #31/12/2026# | Las fechas de 2026 |
| Como "A*" | Los textos que empiezan por A; el * sustituye a cualquier número de caracteres y el ?, a uno |
| En("Madrid";"Toledo") | Cualquiera de los valores de la lista |
| Es Nulo / No es Nulo | Los registros con el campo vacío o lleno |
| >=Fecha()-30 | Las fechas de los últimos treinta días |
| [Introduzca la provincia] | Un parámetro que se pide al ejecutar |
Como en las reglas de validación, los textos van entre comillas, las fechas entre almohadillas (#) y los nombres de campos entre corchetes ([ ]).
9.2. Campos calculados
En la fila Campo de una consulta puede escribirse una expresión con el formato Alias: expresión. El alias, antes de los dos puntos, es el nombre de la nueva columna. Por ejemplo, A_N: Año([FechaNacimiento]) devuelve, para cada fila de la consulta, el año de la fecha de nacimiento en una columna llamada A_N (pregunta de 2019). Otros ejemplos: Total: [Importe]*1,21, NombreCompleto: [Nombre] & " " & [Apellidos]. El Generador de expresiones ayuda a escribirlas.
9.3. Funciones más usadas
| Función | Qué hace |
|---|---|
| Fecha() / Ahora() | La fecha actual / la fecha y hora actuales |
| Año(), Mes(), Día() | Partes de una fecha |
| DifFecha("d";[Inicio];[Fin]) | Diferencia entre dos fechas en días, meses o años |
| Longitud() | Número de caracteres de un texto |
| Izq(), Der(), Medio() | Partes de un texto |
| SiInm(condición;valor_si_verdadero;valor_si_falso) | El «si» de Access: SiInm([País]="Francia";"Francés";"Español") muestra Francés si el país es Francia y Español en otro caso (pregunta de 2019) |
| Conmutador(expr1;valor1;expr2;valor2;…) | Evalúa varias condiciones y devuelve el valor de la primera verdadera: =Conmutador([País]="UK";"Libra";[País]="USA";"Dólar") (pregunta de 2019) |
| Nz([campo];0) | Sustituye un valor nulo por otro, para que los cálculos no den nulo |
| Suma, Promedio, Cuenta, Máx, Mín | Funciones de agregado, en consultas de totales y en los pies de formularios e informes |
9.4. La vista SQL
Toda consulta tiene su equivalente en SQL, que se ve en la vista SQL. Una consulta de selección tiene esta estructura:
SELECT Nombre, Provincia FROM Interesados WHERE Provincia = "Madrid" ORDER BY Nombre;
- SELECT: los campos que se muestran.
- FROM: las tablas de las que proceden (con JOIN para combinarlas).
- WHERE: la cláusula que filtra los registros según una condición (pregunta de 2025, extraordinaria).
- GROUP BY y HAVING: agrupan y filtran los grupos en las consultas de totales.
- ORDER BY: el orden.
Las consultas de acción usan INSERT INTO (datos anexados), UPDATE (actualización), DELETE (eliminación) y SELECT … INTO (creación de tabla). Desde finales de 2024, Access de Microsoft 365 incluye un editor de SQL moderno, basado en el de Visual Studio Code, con colores, autocompletado y formato del código.
10. Formularios
10.1. Para qué sirven y cómo se crean
Un formulario es una ventana para introducir, consultar y modificar los datos de una tabla o una consulta de forma cómoda y controlada, mostrando normalmente un registro cada vez, con etiquetas claras, listas desplegables y botones. Es lo que usa el personal en el día a día, en lugar de escribir directamente en las tablas. Se crean desde la ficha Crear:
- Formulario: crea automáticamente un formulario con todos los campos de la tabla o consulta seleccionada.
- Asistente para formularios: guía paso a paso (campos, distribución, estilo).
- Diseño del formulario y Formulario en blanco: desde cero.
- Más formularios: Varios elementos (varios registros a la vez), Hoja de datos, Formulario dividido (el registro arriba y la hoja de datos abajo) y Formulario de navegación (un menú con pestañas para abrir otros formularios e informes).
10.2. Vistas, secciones y controles
Un formulario tiene tres vistas: Formulario (para usarlo con los datos), Presentación (para ajustar el aspecto viendo los datos) y Diseño (para modificar su estructura, sin datos). En la vista Diseño se ven sus secciones: encabezado del formulario, detalle (los datos de cada registro) y pie del formulario.
Los controles son los elementos del formulario: etiquetas, cuadros de texto, cuadros combinados y cuadros de lista, casillas, botones de opción, botones de comando, imágenes, pestañas y subformularios. Pueden ser:
- dependientes: ligados a un campo, cuyos datos muestran y modifican;
- independientes: sin origen de datos, como una etiqueta o una línea;
- calculados: su Origen del control es una expresión que empieza por el signo igual, como =[Importe]*1,21.
Las características de cada control y del formulario se cambian en la Hoja de propiedades (F4), con pestañas de Formato, Datos, Eventos y Otras.
10.3. El orden de tabulación
El orden de tabulación es el orden en que el cursor pasa de un control a otro al pulsar Tab. Se configura en Diseño de formulario > Orden de tabulación, arrastrando los controles en la lista o con el botón Orden automático, que los ordena de izquierda a derecha y de arriba hacia abajo según su posición en el formulario (pregunta de 2025).
10.4. Subformularios
Un subformulario es un formulario dentro de otro que muestra los registros relacionados con el registro principal: por ejemplo, en el formulario de un interesado, la lista de todos sus expedientes. Se basa en una relación uno a varios y Access sincroniza los dos automáticamente.
10.5. Propiedades de datos y controles útiles
En la pestaña Datos de la hoja de propiedades del formulario se encuentran:
- Origen del registro: la tabla o consulta de la que el formulario toma sus datos.
- Permitir agregar, Permitir ediciones y Permitir eliminaciones: limitan lo que el usuario puede hacer con los registros, por ejemplo un formulario de consulta en el que no se puede modificar nada.
- Entrada de datos: si es Sí, el formulario se abre solo para añadir registros nuevos, sin mostrar los existentes.
- Filtro y Ordenar por: el filtro y el orden con que se muestran los registros.
Entre los controles, los más útiles para evitar errores son el cuadro combinado, que muestra una lista desplegable de valores tomados de otra tabla (por ejemplo, las unidades) y guarda el código de la elegida, y los botones de comando, que el asistente asocia a acciones como guardar el registro, ir al siguiente, abrir un informe o cerrar el formulario. Las pestañas permiten repartir muchos campos en varias páginas del mismo formulario.
11. Informes
11.1. Para qué sirven y cómo se crean
Un informe presenta los datos con formato para imprimirlos, enviarlos o exportarlos a PDF: listados, relaciones de expedientes por unidad con sus totales, etiquetas postales. Puede crearse sobre tablas y sobre consultas (pregunta de 2024); para mostrar solo algunos registros o datos de varias tablas, lo habitual es basarlo en una consulta. Se crea desde la ficha Crear con Informe (automático), el Asistente para informes (que permite elegir campos, niveles de agrupación, orden, totales y diseño), Diseño de informe, Informe en blanco o Etiquetas.
11.2. Vistas
- Vista Informe: muestra los datos en pantalla, permite filtrar y copiar, sin saltos de página.
- Vista preliminar: muestra cómo se imprimirá, página a página; desde ella se imprime o se exporta a PDF.
- Presentación y Diseño: para modificar el informe.
11.3. Las secciones de un informe
| Sección | Dónde aparece |
|---|---|
| Encabezado del informe | Una sola vez, al principio: solo en la primera página (pregunta de 2024, extraordinaria). Para el título, el logotipo o la fecha |
| Encabezado de página | En la parte superior de cada página: los títulos de las columnas |
| Encabezado de grupo | Al principio de cada grupo, por ejemplo el nombre de cada unidad |
| Detalle | Una vez por cada registro |
| Pie de grupo | Al final de cada grupo: los subtotales |
| Pie de página | Al final de cada página: el número de página |
| Pie del informe | Una sola vez, al final del informe: los totales generales |
Los grupos y el orden se definen en Agrupar y ordenar (ficha Diseño de informe). Los totales se calculan con cuadros de texto con expresiones como =Suma([Importe]) o =Cuenta(*) en los pies, y el número de página con ="Página " & [Page] & " de " & [Pages].
12. Importación, vinculación y exportación de datos
12.1. Importar y vincular
La ficha Datos externos > Importar y vincular > Nuevo origen de datos trae datos de otros orígenes: archivos (Excel, otra base de Access, texto o CSV, XML, HTML), bases de datos (SQL Server, otras mediante ODBC), servicios en línea (listas de SharePoint, Dataverse) y contactos de Outlook. Hay dos formas de hacerlo, y la diferencia es fundamental:
| Importar | Vincular | |
|---|---|---|
| Qué crea | Una tabla nueva en Access con una copia de los datos | Una tabla vinculada que lee los datos en su origen, sin copiarlos |
| Cambios posteriores en el origen | No se reflejan: la copia queda como estaba | Se ven al momento en Access |
| Dónde están los datos | Dentro de la base de datos, que crece | Fuera, en el archivo o servidor de origen |
| Cuándo conviene | Para traer datos una vez y trabajar con ellos en Access | Para trabajar con datos que mantiene otra persona u otro sistema |
En el panel de navegación, las tablas vinculadas se distinguen por una flecha junto a su icono. En una tabla vinculada no se puede cambiar el diseño, y si el archivo de origen se mueve, hay que volver a vincularlo con el Administrador de tablas vinculadas.
Al importar una hoja de Excel, el asistente pregunta si la primera fila tiene los encabezados de columna, permite ajustar el tipo de datos de cada campo, elegir la clave principal y guardar los pasos para repetirlos. Los datos importados pueden añadirse a una tabla existente o crear una nueva.
12.2. Exportar
En Datos externos > Exportar se envía el contenido de una tabla, consulta, formulario o informe a otro formato: Excel, texto o CSV, PDF o XPS (lo habitual para informes), Word (en RTF), XML, otra base de datos de Access o una lista de SharePoint. La opción Combinar con Word usa una tabla o consulta como origen de datos de una combinación de correspondencia (tema 41). Las operaciones de importación y exportación pueden guardarse para repetirlas con un clic.
12.3. El Divisor de bases de datos
Cuando varias personas usan la misma base de datos en red, conviene dividirla en dos archivos:
- una base de datos back-end (servidor), en una carpeta compartida, que contiene solo las tablas con los datos;
- una base de datos front-end (cliente), una copia en el equipo de cada usuario, con las consultas, formularios, informes y código, y con tablas vinculadas a las del back-end.
Así se reduce el tráfico de red y se puede mejorar la aplicación sin tocar los datos. Lo hace el Divisor de bases de datos, en Herramientas de base de datos > Mover datos > Base de datos de Access: es un asistente para mover las tablas de la base de datos actual a una base de datos nueva, la back-end (preguntas de 2019 y 2022).
12.4. Access y los datos en servidores y en la nube
Access puede ser la «cara» de unos datos guardados en otro sitio. Mediante ODBC se vinculan tablas de SQL Server (también de Azure SQL), lo que permite superar el límite de 2 GB y dar servicio a más usuarios manteniendo los formularios e informes de Access. También se pueden vincular listas de SharePoint y tablas de Dataverse, la plataforma de datos de Microsoft 365 en la que se basan las aplicaciones de Power Apps. El Asistente para la migración (Mover datos > SQL Server) ayuda a trasladar las tablas a un servidor. En organizaciones grandes como un ministerio, estas decisiones las toma el servicio de informática, que gestiona los servidores y las copias de seguridad.
13. Mantenimiento, seguridad y personalización
13.1. Compactar y reparar
Con el uso, una base de datos crece y se fragmenta: Access no recupera automáticamente el espacio de los registros y objetos eliminados. Compactar y reparar base de datos (Herramientas de base de datos, o Archivo > Información) reduce su tamaño y corrige los problemas de los archivos, lo que fue la respuesta de una pregunta de 2022. Puede activarse que se haga al cerrar la base de datos (Opciones > Base de datos actual > Compactar al cerrar). Antes conviene hacer una copia de seguridad (Archivo > Guardar como > Realizar copia de seguridad de la base de datos).
13.2. Seguridad
- Cifrar con contraseña (Archivo > Información; hay que abrir la base de datos en modo exclusivo): sin la contraseña no se abre.
- Generar un archivo .accde, que impide ver o modificar el diseño y el código.
- El Centro de confianza controla si se ejecutan las macros y el código: una base de datos que no está en una ubicación de confianza se abre con el contenido activo deshabilitado y una barra de advertencia de seguridad.
- Las bases de datos con datos personales están sujetas al Reglamento General de Protección de Datos y al Esquema Nacional de Seguridad: deben guardarse en ubicaciones corporativas con acceso restringido y con copias de seguridad.
13.3. Macros y módulos
Las macros de Access se crean con el Generador de macros, eligiendo acciones de una lista (abrir un formulario, ejecutar una consulta, mostrar un mensaje, exportar un informe), sin escribir código. Una macro llamada AutoExec se ejecuta automáticamente al abrir la base de datos. Para tareas más complejas se usan los módulos, con código VBA, que se escriben en el editor de Visual Basic (Alt + F11).
13.4. Personalización
En Archivo > Opciones, la sección Base de datos actual permite elegir el formulario de presentación que se abre al iniciar la base de datos, mostrar u ocultar el panel de navegación y la barra de estado, elegir entre documentos con pestañas o ventanas superpuestas, compactar al cerrar y el título de la aplicación. Como en Word y Excel, se personalizan la cinta y la barra de herramientas de acceso rápido.
14. Supuestos prácticos resueltos
Caso 1. De la hoja de cálculo a la base de datos
Una unidad lleva en Excel un registro de solicitudes en el que, para cada solicitud, repite el nombre, NIF, domicilio y teléfono del solicitante, que presenta muchas al año. Al cambiar un domicilio hay que corregirlo en decenas de filas. ¿Qué diseño en Access lo evita?
Dos tablas: Solicitantes (clave principal: NIF, de tipo Texto corto, con sus datos) y Solicitudes (clave principal: número de solicitud, Autonumeración, con la fecha, el tipo y el campo NIF como clave externa). Se crea en la ventana Relaciones una relación uno a varios entre los dos NIF con integridad referencial. Cada dato del solicitante se guarda una vez, y la integridad impide registrar solicitudes de solicitantes inexistentes. Los datos de la hoja se traen con Importar.
Caso 2. Fechas de alta futuras
Se quiere que en el campo FechaAlta no se puedan registrar fechas anteriores a hoy, que por defecto aparezca la fecha del día y que, si se incumple, salga un aviso claro.
En la vista Diseño de la tabla, para FechaAlta: Valor predeterminado =Fecha(); Regla de validación >=Fecha(); y Texto de validación «La fecha de alta no puede ser anterior a hoy». Si además es obligatoria, Requerido: Sí.
Caso 3. Un listado que pide el año
Cada mes se pide un listado de las solicitudes de un año concreto, ordenadas por fecha, que pueda imprimirse con el número total al final.
Una consulta de parámetros sobre Solicitudes con un campo calculado Ejercicio: Año([Fecha]) y el criterio [Indique el año], ordenada por fecha ascendente. Sobre ella, un informe con los títulos en el encabezado de página y, en el pie del informe, un cuadro de texto con =Cuenta(*). Al abrir el informe aparecerá la ventana «Introduzca el valor del parámetro».
Caso 4. Subida de tarifas
Hay que subir un 3 % el importe de todas las tasas de una tabla de 400 registros, de una vez.
Una consulta de actualización: en el campo Importe, en la fila Actualizar a, [Importe]*1,03. Antes de ejecutarla conviene hacer una copia de seguridad, porque no se puede deshacer, y comprobar con una consulta de selección qué registros se modificarán.
Caso 5. Datos que mantiene otra unidad
La unidad de personal mantiene en un libro de Excel la relación actualizada de unidades y responsables. Otra unidad quiere usarla en su base de datos de Access y que esté siempre al día.
Vincular la hoja de Excel (Datos externos > Nuevo origen de datos > Desde archivo > Excel, opción «Vincular al origen de datos creando una tabla vinculada»), en lugar de importarla: la tabla vinculada mostrará siempre los datos actuales del libro. Si se importara, sería una copia que se quedaría desfasada.
Caso 6. La base de datos lenta y grande
Una base de datos compartida en red por diez personas ocupa 1,6 GB, va lenta y alguna vez ha dado errores al abrir.
Compactar y reparar después de hacer una copia de seguridad, lo que reducirá el tamaño y corregirá errores; dividirla con el Divisor de bases de datos (back-end con las tablas en la red y front-end en cada equipo); y, como se acerca al límite de 2 GB, valorar con el servicio de informática pasar las tablas a un servidor como SQL Server, manteniendo Access como interfaz con tablas vinculadas.
Caso 7. Todos los interesados, tengan o no solicitudes
Una consulta con las tablas Interesados y Solicitudes muestra solo los interesados que tienen alguna solicitud, pero se necesita la lista completa, con las solicitudes de quien las tenga.
La consulta usa la combinación interna, que solo muestra los registros con pareja en las dos tablas. Haciendo doble clic en la línea de combinación se elige la opción que incluye todos los registros de Interesados y solo los de Solicitudes en los que los campos combinados sean iguales: una combinación externa. Los interesados sin solicitudes aparecerán con los campos de la solicitud vacíos. Si se buscaran solo los que no tienen ninguna, se usaría el asistente de búsqueda de no coincidentes.
Caso 8. Un formulario solo para dar altas
El personal de registro solo debe poder dar de alta solicitudes nuevas, sin ver ni modificar las ya registradas, y elegir la unidad de destino de una lista.
Se crea un formulario sobre la tabla Solicitudes y, en la pestaña Datos de su hoja de propiedades, se pone Entrada de datos en Sí (y Permitir ediciones y Permitir eliminaciones en No). Para la unidad se usa un cuadro combinado que toma los valores de la tabla Unidades. La fecha de entrada puede tener como valor predeterminado =Fecha(), y las reglas de validación de la tabla se aplican igual en el formulario.
15. Trampas habituales
- «Los formularios y los informes guardan datos». Falso: solo las tablas almacenan datos.
- «Un NIF o un código postal deben ser de tipo Número». Falso: son Texto corto, porque no se calcula con ellos.
- «En una clave compuesta, cada campo debe ser único». Falso: lo único es la combinación de sus valores.
- «Indexado Sí (Con duplicados) impide repetir valores». Falso: lo impide «Sí (Sin duplicados)».
- «La regla >=Fecha() solo admite la fecha de hoy». Falso: admite hoy y cualquier fecha posterior.
- «Las fechas literales van entre comillas». Falso: van entre almohadillas, #01/01/2024#.
- «Una consulta de datos anexados modifica registros». Falso: agrega registros; la de actualización los modifica.
- «Las consultas de acción se pueden deshacer con Ctrl + Z». Falso: sus cambios son definitivos.
- «En la cuadrícula, los criterios en filas distintas deben cumplirse a la vez». Falso: las filas distintas son alternativas (O); la misma fila exige todas (Y).
- «El encabezado del informe aparece en todas las páginas». Falso: solo en la primera; en todas aparece el encabezado de página.
- «Un informe solo puede basarse en tablas». Falso: también en consultas.
- «Importar mantiene los datos actualizados con el origen». Falso: importar copia; para estar al día hay que vincular.
- «El Divisor de bases de datos reparte los datos en varias tablas». Falso: separa las tablas (back-end) de los demás objetos (front-end).
- «Compactar y reparar borra registros antiguos». Falso: recupera espacio y corrige errores sin borrar datos.
- «La cláusula SQL que filtra registros es ORDER BY». Falso: es WHERE; ORDER BY ordena.
- «El orden automático de tabulación va de arriba abajo y de derecha a izquierda». Falso: de izquierda a derecha y de arriba hacia abajo.
16. Esquema de repaso
| Bloque | Lo esencial |
|---|---|
| Conceptos | Base de datos · SGBD (SQL Server, Oracle, MySQL, PostgreSQL, Access) · modelo relacional: tabla, registro (fila), campo (columna), clave principal, clave externa · normalización · SQL |
| Access | Solo Windows · .accdb, .accde, .accdt, .mdb, .laccdb · 2 GB por base de datos · 64 caracteres por nombre · 255 campos por tabla · objetos: tablas, consultas, formularios, informes, macros, módulos (VBA) |
| Tablas | Hoja de datos y Diseño · tipos: Texto corto (255), Texto largo, Número, Fecha/Hora, Moneda, Autonumeración, Sí/No, Hipervínculo, Datos adjuntos, Calculado, Asistente para búsquedas · propiedades: tamaño, formato (Estándar 2.345,68), máscara, título, valor predeterminado, regla y texto de validación, requerido, indexado |
| Validación | >=Fecha() · >=#01/01/2024# · Longitud([Texto01])<10 · textos entre comillas, fechas entre # y campos entre [ ] |
| Claves y relaciones | Clave simple y compuesta (combinación única) · Indexado Sí (Sin duplicados) · 1:1, 1:N, N:M (tabla de unión) · integridad referencial · actualizar y eliminar en cascada · combinación interna y externas |
| Consultas | Selección · parámetros ([Fecha de Alta] → «Introduzca el valor del parámetro») · totales · referencias cruzadas · acción: creación de tabla, datos anexados (agrega), actualización (cambia), eliminación · Y en la misma fila, O en filas distintas · Alias: expresión · SiInm, Conmutador, Año, Fecha() · SQL: SELECT, FROM, WHERE, GROUP BY, ORDER BY |
| Formularios | Introducir y consultar datos · Formulario, Presentación y Diseño · controles dependientes, independientes y calculados · orden de tabulación (automático: izquierda a derecha, arriba abajo) · subformularios |
| Informes | Sobre tablas y consultas · Informe, Vista preliminar, Presentación y Diseño · encabezado del informe (primera página), de página, de grupo, detalle, pies · Agrupar y ordenar · =Suma(), =Cuenta(*) |
| Datos externos | Importar (copia) frente a vincular (enlace, flecha) · Excel, texto, SQL Server, SharePoint · exportar a Excel, PDF, Word · Combinar con Word · Divisor de bases de datos (back-end y front-end) |
| Mantenimiento | Compactar y reparar · copia de seguridad · cifrar con contraseña (modo exclusivo) · .accde · Centro de confianza · macros (AutoExec) y VBA |
17. Ideas fuerza y enlace con el resto del temario
- En una base de datos relacional cada dato se guarda una sola vez, en su tabla, y las tablas se unen por sus claves.
- Las tablas guardan, las consultas preguntan, los formularios sirven para escribir y los informes, para imprimir.
- Un buen diseño de tablas (tipos, propiedades, reglas de validación, claves) evita errores antes de que se produzcan.
- La integridad referencial impide datos huérfanos y es la razón de ser de las relaciones.
- Las consultas de acción cambian los datos de forma definitiva: copia de seguridad antes.
- Importar copia; vincular enlaza.
Este tema enlaza con el tema 42 (Excel), del que suelen venir los datos que se importan o vinculan y al que se exportan los resultados; con el tema 41 (Word), por la combinación de correspondencia; con el tema 38, por las copias de seguridad y la seguridad de los datos; y con los temas de protección de datos y administración electrónica, que regulan el tratamiento de la información que contienen estas bases de datos.
¿Te lo sabes? 🐂
Pon a prueba este tema con su test, con preguntas al estilo del examen oficial del INAP. Crea tu cuenta gratis para guardar tu progreso y repasar tus falladas. Gratis y siempre lo será.
