Pasar datos entre formularios de distintas bases de datos

Para los miembros del foro. Gracias a una ayuda que me facilitaron y adaptando un ejemplo de neckkito, deseo pasar datos de un formulario de una base de datos a otro formulario de otra base de datos, pero no se como realizarlo por si me podéis orientar o ayudar. Os explico lo que tengo realizado hasta el momento.

Tengo un formulario llamado FDenuncias, con 3 campos: campo1, campo2, campo3; y un botón para llamar a otro formulario de otra base de datos con la siguiente instrucción:

Private Sub cmdAbrir_Click()

'Declaramos una constante y le asignamos la ruta donde tengamos la BD Destino

Const BdDestino As String = "C:\Codificado Trafico\Codificado Trafico2016.accdb"

'Declaramos las variables

Dim miAccess As Object

'Establezco la conexión con  BD que queriero abrir

Set miAccess = GetObject(BdDestino, "Access.Application")

With miAccess

'Abro el formulario FBusquedas

.DoCmd.OpenForm "FBusquedas"

‘Hago visible botón insertar

.Forms!FBusquedas!cmdInsertar.Visible = True

End With

'Libero memoria

Set miAccess = Nothing

'Cierro BD

DoCmd. Quit

End Sub

Ahora viene la pregunta, que instrucción debería de insertar en el botón cmdInsertar de la base de datos que he abierto (Codificado Trafico2016), con los siguientes campos: Articulo, Codigo, Texto para pasar datos a campo1, campo2, campo3 de la base de datos del FDenuncias.

1 respuesta

Respuesta
1

Una sugerencia: ¿No te sería más sencillo pasar primero los datos a la tabla de la BD destino con una SQL y luego abrirla en ese formulario?

Para insertar los datos:

Dim miSQL as String

CurrentDb.Execute "INSERT INTO TablaDestino (Campo1, CAmpo2,Campo3) IN [Ruta BD Destino] VALUES (Valor1,Valor2,Valor3)

Para abrir la BD en un formulario concreto, puedes hacerlo más sencillo:

Application.FollowHyperlink "Ruta BdDestino" & "#Form FMenuDestino"

En este ejemplo, en la parte final, tienes exlicado cómo pasar valores entre formualiros de dos BDs. Igual que pasas uno, pasas 3: https://dl.dropboxusercontent.com/u/7400954/WebAccess/Pdf/EjemplosEspeciales/AccessDesdeAccess.pdf 

Un saludo


Hola y gracias por contestar, pero te explico un poco lo que pretendo, en el formulario que abro es para rellenar una denuncia, desde aquí voy al codificado, selecciono los datos del codificado y los paso al formulario desde el que he llamado. Un saludo.

Llevo un buen rato probando cosas, y no doy accedido por código a una BD ya abierta, para poder pasarle los datos.

DE todas formas, tu planteamiento me parece demasiado rebuscado, teniendo formas más sencillas de solucionarlo:

1º/ ¿Para qué necesitas dos BDs, si puedes tenerlo todo en una? Esta sería la solución más sencilla, pues el traspaso de datos lo harías entre dos formularios de la misma BD, y no creo que tengas problema con ellos.

2º/ Si necesitas por el motivo que sea tener las dos BDs, puedes vincular la tabla o tablas de la BD "Codificado Trafico2016" (y las puedes poner oculta) que te hacen falta, y crear (o importar)el formulario sobre esa tabla y trabajar en una única tabla.

3º/ Con el código que tienes haces: abres la BD "Codificado Trafico2016" y cierras la BD de origen. Siempre puedes hacer lo mismo desde "Codificado Trafico2016" y pasar los datos como en el ejemplo de Neckkito que cito arriba (antes de eso tendrías que moverte al registro adecuado)

4º/ Puedes exportar el registro de "Codificado Trafico2016" a un archivo de texto, por ejemplo y luego importarlo desde el otro formulario.

Yo, desde luego, no me complicaría y adoptaría una de las dos primeras alternativas.

Siento no poder ser de más ayuda, pero ya no se me ocurre qué más probar para lograr lo que quieres.

Un saludo


Añade tu respuesta

Haz clic para o

Más respuestas relacionadas