Quantcast
Channel: Access – El Blog de Alex Borrás
Viewing all 10 articles
Browse latest View live

Como ver todos los comandos de Microsoft Access

$
0
0

Código VBA para ver todos los comandos de las barras de menú de Access 2000:

[VB]
Sub EnumerarComandos()
Dim cb As CommandBar
Dim cbc As CommandBarControl
For Each cb In Application.CommandBars
Debug.Print cb.Name
For Each cbc In cb.Controls
Debug.Print cbc.Caption
Next
Next
End Sub
[/VB]

La entrada Como ver todos los comandos de Microsoft Access aparece primero en El Blog de Alex Borrás.


Consulta de Referencias cruzadas en Access con parámetros

$
0
0

Es frecuente hacer una consulta SQL de referencias cruzadas en Access basada en una primera consulta que prepara los datos y los filtra en función de unos parámetros.

La 1ª consulta con parámetros funciona bien pero la 2ª da un error al ejecutarse del tipo: “El motor de base de datos Microsoft Jet no reconoce … como un nombre de campo o expresión válidos”.

Error en consulta de referencias cruzadas con microsoft access

Hay que hacer lo siguiente:

  1. Suponemos que la 1ª consulta se basa en dos campos de fecha que están en un formulario y los campos se llaman: [Desde Fecha] y [Hasta Fecha]
  2. La primera consulta, la de selección, usa este dos campos para filtrar los datos.
  3. En la segunda consulta una vez construida y estando en el modo de diseño se debe ir a la barra de menús superior e ir a la opción Consulta->Parámetros y aparece una tabla de doble entrada donde pone Parámetro y Tipo de datos.
  4. Insertaremos tantas filas como parámetros tengamos, en nuestro caso serán dos:
    • [Formularios]![NombreFormulario][Desde Fecha], tipo de datos Fecha/Hora
    • [Formularios]![NombreFormulario][Hasta Fecha], tipo de datos Fecha/Hora
  5. Ahora podremos ejecutar la consulta sin que de errores.

Si los parámetros no están en un formulario si no directamente en la primera consulta el procedimiento en la 2ª consulta es el mismo. Para un criterio directo como True, False, mayor o menor, etc. no hace falta crear parámetros en la segunda consulta.

La entrada Consulta de Referencias cruzadas en Access con parámetros aparece primero en El Blog de Alex Borrás.

Barra de Menú Contextual en Access

$
0
0

Paso a paso para crear una barra de menus contextual y utilizarla en un formulario Access.

Como crear la barra de Menus Contextuales:

  1. Ir Ver-> Barra de Herramientas -> Personalizar
  2. Seleccionar la pestaña Barra de Herramientas y pulsa el Boton Nueva
  3. Poner un nombre (yo las suelo empezar por ctx) y MenuContextual y verás que aparece una barra flotante.
  4. Añadir las funciones o macros que se quiera o no pongas ninguna
  5. Una vez creada la barra de Herramientas, selecciona Propiedades de la Barra de Herramientas nueva e indica que es de tipo emergente, verás que desaparece de la lisa de Barra de Herramientas, no pasa nada.

Como modificar las opciones de un Menú Contextual

  1. Ir Ver-> Barra de Herramientas -> Personalizar
  2. Marcar la barra Menús Contextuales y aparece una barra que contiene todos los menús contextuales de Access.
  3. El último Menú es Personalizada y allí podemos, de la forma habitual, añadir, modificar o eliminar opciones de la barra de Menús

Una forma de Utilizar los Menús Contextuales

Es habitual tener un formulario con una lista de registros y que queramos añadirle una serie de opciones a los mismos via menú contextual de una forma sencilla, aquí os pongo un ejemplo posible, para utilizar este ejemplo son necesarios conocimientos básicos de VBA.

Partimos de la base de que tenemos un formulario que nos muestra una lsita de clientes y cada cliente tiene su formulario de mantenimiento de datos: frmClientes

  1. Creamos una barra de menú contextual llamada ctxCliente
  2. Creamos una variable global llamada gblCliente
  3. Creamos una función VBA por cada acción de la Barra de Menús (Ejemplo 1)
  4. Añadidimos en nuestra barra de menús la acción para acceder a la función pública poniendo en Acción = pfuCompeticionFicha()

Ejemplo 1:
[VB]
Public Function pfuClienteFicha()
On Error Resume Next
DoCmd.OpenForm “frmCliente”, , , “[ClienteID]='” & gblCliente & “‘”
End Function
[/VB]

La entrada Barra de Menú Contextual en Access aparece primero en El Blog de Alex Borrás.

Desplegable en Access combinando dos campos, uno de ellos nulo

$
0
0

Típico caso en Microsoft Access en el que tenemos que poner una desplegable para personas con el código oculto y visualizando nombre apellidos o apellidos, nombre el problema con el sistema normal es que si uno de los dos campos es nulo no se muestra nada.

La solución es poner esto en la columna de la consulta SQL de la que depende el campo de descripción:

[VB]
Paciente: [apellidos]+SiInm(EsNulo([nombre propio]);””;”, “+[nombre propio])
[/VB]

Ejemplo en CAGI0101_1

La entrada Desplegable en Access combinando dos campos, uno de ellos nulo aparece primero en El Blog de Alex Borrás.

Error Eliminado en ODBC Mysql-Access

Como generar un PDF en Access y Microsoft Office

$
0
0

A veces queremos enviar una copia de informe creado por Microsoft Access a otra persona pero los formatos que nos ofrece el propio Access, a parte de la impresora, no sabemos si los podrá leer el destinatario. También es posible que queramos enviar por email un informe de WinBol en un formato compatible.

Para solucionar estos problema lo mejor es crear un archivo PDF a partir del informe de Access y entonces enviarlo, para ello haremos lo siguiente:

  • Descargar un programa gratuito de código libre generador de PDF: PDF Creator
  • Una vez descargado lo instalamos en nuestro PC
  • Seguidamente vamos a Access, hacemos vista previa de un informe y hacemos clic en el menú Archivo-> Imprimir
  • Access muestra un desplegable con la lista de impresoras, hacemos clic y veremos una nueva que se llama PDF Creator, la seleccionamos y pulsamos imprimir
  • Cuando salga la ventana de opciones de PDF Creator lo único que tenemos que hacer es pulsar en Guardar y la aplicación nos guarda el PDF en nuestro disco.
  • Una vez hemos creado el archivo ya lo podemos enviar como queramos

Nota:

La nueva impresora PDF Cretator está también disponible para cualquier otro programa que tengamos instalado en nuestro PC a parte del Microsoft Access, con lo cual lo podemos utilizar también para imprimir Archivos de Word y Excel en formato PDF.

La entrada Como generar un PDF en Access y Microsoft Office aparece primero en El Blog de Alex Borrás.

Buscar un registro en Access 2003

$
0
0

Este código de VBA en Access 2003 combina la función de buscar un registro en función de un campo de fecha de un formulario y en que caso de no encuentre el dato que vaya a nuevo registro.

Para seleccionar la Fecha se utiliza un control Calendar llamado Calendario.

[VB]
Dim lngReg As Long
lngReg = DCount(“[fecha]”, “Facturas”, “[fecha] = #” & Format(Calendario.Value, “mm-dd-yy”) & “#”)
If lngReg <= 0 Then DoCmd.GoToRecord acActiveDataObject, , acNewRec Else Fecha.SetFocus DoCmd.FindRecord Calendario.Value, acEntire, False, acSearchAll, , acCurrent End If [/VB]

La entrada Buscar un registro en Access 2003 aparece primero en El Blog de Alex Borrás.

Vincular o importar tablas de MySQL en Microsoft Access

$
0
0

Si necesitamos vincular o importar tablas de MySQL en Microsoft Access para desarrollar algún tipo de traspaso, crear consultas o informes en Access con datos almacenados en MySQL lo podemos hacer con la instalación de una ODBC y siguiente los siguientes pasos

  1. Tener instalado en nuestro PC un Servidor MySQL como wamp.
  2. Instalar MyODBC, una utilidad gratuita que nos instala en nuestro PC Windows la ODBC para conectarse a MySQL
  3. Ir desde el Panel de Control a Herramientas Administrativas>Orígenes de datos. En la pestaña DSN de Usuario hacer clic en Agregar y seleccionar MySQL ODBC Driver.
  4. Ir a Microsoft Access seleccionar vincular o importar tabla y en el desplegable inferior poner de Tipo de archivos poner: Base de datos ODBC.
  5. Aparece una ventana con dos pestañas, hacer clic en la 2ª: Origen de datos de equipo y seleccionar la ODBC que creamos, el nombre aparece es el quisimos en la casilla Data Source Name.
  6. Seguidamente nos aparecerán todas las tablas de la base de datos MySQL

Notas:

  • Si da error al conectarse puede ser un problema del Usuario y Contraseña introducidos al crear la ODBC. Se recomienda usar el botón de Test para comprobar la conexión.
  • A veces al vincular tablas y visualizar los datos dato aparece el valor #eliminado en todas las filas, sin embargo si se hace importación entonces no suele haber problemas.

La entrada Vincular o importar tablas de MySQL en Microsoft Access aparece primero en El Blog de Alex Borrás.


Importar DBF a Microsoft Access. Problemas con Acentos y Carácteres Especiales

$
0
0

Al importar o vincular ficheros DBF como tablas de Access es frecuente encontrase con el problema de que los acentos y caracteres especiales como ª,º, etc. no se visualizan correcmente en las tablas destino. ESto es debido a que el juego de caracteres de los ficheros DBF es distinto al utilizado por Microsoft Access.

Sin embargo la solución es muy sencilla y no requiere la adquisición de programas de terceros o el desarrollo de rutinas de conversión. Basta con hacer los siguientes pasos para dejarlo solucionado:

  • Acceder al registro del sistema con Regedit
  • Ir a la clave siguiente según versión de Microsoft Access:
    • 2003: [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Xbase]
    • 2007: [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\12.0\Access Connectivity
      Engine\Engines\Xbase]
  • Sustituir el valor DataCodePage: OEM por el valor: ANSI
  • Abrimos la base de datos Access y veremos como los caracteres de las tablas vinculadas ya se muestran correctamente.

Esto es aplicable por ejemplo al importar datos de las aplicaciones de SP como Contaplus o FacturaPlus.

 

La entrada Importar DBF a Microsoft Access. Problemas con Acentos y Carácteres Especiales aparece primero en El Blog de Alex Borrás.

Control de campos calculados en informes de Access

$
0
0

Cuando queremos restringir los valores que nos devuelve un informe de Microsoft Access en función de del valor de un campo es sencillo, ponemos las condiciones en una consulta que actúe como fuente de informe y ya está. Sin embargo el tema se complica un poco cuando el control lo que queremos realizar en función del valor de un campo que vamos a calcular en la sección Detalle del Report.

En este caso podemos hacer poniendo un campo de selección en el formulario, por ejemplo el fraTipo que se utiliza en el ejemplo y que pregunta por dos opciones (1.Todos los socios o 2.solo los pendiente de pago).

Seguidamente en el evento Detalle_Format incluiremos el siguiente código:

[VB]
    If Form_CLGI0201Cobros.fraTipo = 2 Then
        If txtPendiente = 0 Then
            Cancel = True
            Exit Sub
        End If
    End If
[/VB]

La entrada Control de campos calculados en informes de Access aparece primero en El Blog de Alex Borrás.

Viewing all 10 articles
Browse latest View live