Relacionar campos

Hola, buenas tardes.
Quería ver si me podías responder a una pregunta que debe ser sencilla pero que no acabo de averiguar:
En un formulario tengo un campo "Provincia" y un campo "Código Postal".
Aparte, tengo una tabla con todas las Provincias y los dos dígitos iniciales de su Cód. Postal.
¿Cómo se programaría que en el evento "Al cambiar" buscara en la tabla y modificara los dos primeros dígitos del Código Postal?
Mi VB es pobre, y no me da para hacerlo.
Gracias por tu ayuda por anticipado.
Un saludo,
Toni

1 respuesta

Respuesta
1
Deberías usar la función DLoockup. Aquí te pongo un ejemplo:
Private Sub CP_AfterUpdate()
Dim strBusqueda As String
strBusqueda = "[CódigoProvincia] = """ & Me.CP & """"
Me.Provincia = DLookup("[Provincia]", "Provincias", strBusqueda)
End Sub
Donde [CódigoProvincia] es el campo de la tabla donde almacenas el Código de la provincia, Me.CP es el campo en el formulario donde escribes el Código Poastal, [Provincia] es el campo de la tabla donde está el nombre de la provincia, y Provincias es el nombre de la tabla.
Por cierto, deberías codificarlo en el evento Después de actualizar del campo, porque sino, ejecutarías el evento cada vez que pulsas una tecla.
Por último, decirte que si tu campo [CódigoProvincia] de la tabla provincias, no es de tipo texto, deberías cambiar esta lineas:
strBusqueda = "[CódigoProvincia] = """ & Me.CP & """" por:
strBusqueda = "[CódigoProvincia] = & Me.CP
Muchas gracias. Al principio me he liado un poco con campos y con comillas, pero me ha servido para recordar DLookUp, que hacía tiempo que no la usaba.
Gracias otra vez, y a seguir asesorando, que lo haces muy bien.
Toni

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas