Como puedo rellenar automáticamente campos de un formulario?

Tengo dos tablas una de datos cientes y otra datos facturas clientes. Quiero hacer un formulario de la tabla facturas de cliente, y quiero que los campos que sean iguales de las dos tablas (nombre cliente, nif ) me los rellenes automáticamente al poner numero de cliente

2 Respuestas

Respuesta
2

Antonio: Si no vas a guardar los datos, en cada control del Formulario, en el Origen de Registro, le pones algo así:

=DBúsq("NombreDeTuCampo","NombreTablaClientes";"IdCliente = " & IdCliente

Esto es solo 1 Campo, y como ves tienes que adaptar los nombres a los que tu tengas.

DBús >> Dlookup

Este enlace puede sacarte de dudas

https://msdn.microsoft.com/es-es/library/office/ff834404.aspx 

Mis saludos y deseo de que tengas unas Felices Navidades y buena entrada del 2017>>Jacinto

Respuesta
2

Vamos a ver. En principio no es necesario que repitas campos en las tablas. Si la tala Clientes tiene, por ejemplo, NumCliente(clave), nombre, apellidos, dirección, etc. Latabla Facturas la puedes hacer como NumFactura(clave, ya que no puede haber dos facturas con el mismo número), Numcliente(para relacionarlo con el de la tabla Clientes, fechafactura, etc.

Supongamos que con la tabla Facturas haces un formulario. Puedes añadirle cuadros de texto independientes, como dirección, teléfono, etc

Entonces, en las propiedades del cuadro de texto Numcliente, en eventos-después de actualizar crea un procedimiento de evento y entre Private Sub y End Sub escribe

dirección=dlookup("dirección","clientes","numcliente=" & me.numcliente & "")

telefono=dlookup("telefono","clientes","numcliente=" & me.numcliente & "")

Y si lo combinas con poner en las propiedades del formulario, en el evento Al activar el registro

If not isnull([numcliente]) then

dirección=dlookup("dirección","clientes","numcliente=" & me.numcliente & "")

telefono=dlookup("telefono","clientes","numcliente=" & me.numcliente & "")

end if

Te quedaría perfecto.

De todas formas, si quieres, repito, si quieres, mándame un mensaje a [email protected] y te mando un ejemplo. Si lo haces, en el asunto del mensaje pon tu alias Antonio, ya que si no sé quien me escribe ni los abro.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas