Copiar datos de BD rellenada por formulario en rango referenciado a una celda

Fórmula para COPIAR datos de una BD a un Buscador

Estoy terminando de preparar un archivo que me sirva para introducir los datos de los clientes mediante un Formulario(FORMULARO) usando macros hacia un base de datos (BDG) en la que en la parte superior he preparado unas celdas mediante las cuales en función de un dato concreto, el DNI (Celda I2) obtengo el código de cliente (con formato personalizado 17-8000, 17 por el año y 8 por el mes) y la primera celda de la fila en la que está para mediante un botón se posicione en la fila, y a su vez en el rango A6:K12 he preparado unas celdas para que me copie todos los datos del cliente (Cod, Nombre, Apellidos, DNI, Teléfonos, Email, Fecha de Alta, Productos Contratados (de 1 a 6 opciones), Modalidad (1 o 2, en función del producto elegido se añadirían 3 o 6 meses a la fecha de alta) y Fecha de Vencimiento. Para ello he usado las funciones Indice y Coincidir referenciadas a la celda I2 (DNI) y el rango A15:A5000, B15:B5000, etc. El problema es cómo podría copiar los datos de las filas inferiores a la elegida en las columnas de Productos Contratados, Modalidad y Fecha de Vencimiento, ya que tal y como está solo copia la primera fila. ¿Podría hacerse mediante una macro en la que salieran todos los datos?

Quiero decir, que al introducir el DNI en I2 y pulsar enter apareciese el combobox con los datos del cliente.

Otra duda que tengo es si habría alguna forma de que el código de cliente de actualizase automáticamente en función del año y el mes activo, es decir, 17-9000 para septiembre de 2017, etc.

Y para acabar, y siento ser tan preguntón, ¿habría alguna forma de que al abrir el libro apareciese un MsgBox o ImputBox en el que viniesen los datos de los clientes a los que está a punto de vencer los productos contratados con 5 días de preaviso?. El código revisara las fechas desde el final de la columna k hasta la celda k15 y si la fecha actual fuese 5 días antes de la fecha de vencimiento apareciese el mensaje de aviso.

Añade tu respuesta

Haz clic para o