Copiar Datos de 1Hoja a otra en Excell y que los vaya guardando.

(Las hojas las tengo con nombres diferentes pero para no liar me referiré a ellas como hoja1, etc)

En la Hoja 1 introduzco datos de una venta. Las celdas las tengo distribuidas, de manera que no tengo todos los datos de una venta en una fila o una columna, si no que yo las he distribuido de la manera que mas me convenía.

Tengo un botón con una macro asignada que al terminar de introducir los datos de una venta, me borra todas las celdas para poder introducir otra.

Necesito, con otro botón o en el mismo, mejor con otro, que al hacer click como en el botón de limpiar, me guarde todos los datos de esta venta en otra hoja. Esta hoja de almacenamiento de ventas si los guardaría en filas.

En la Hoja 1 tengo una celda con fecha automática del día en que se realiza, esta me interesa que se guarde como la fecha en que se hizo y que no varíe.

El resto de celdas tengo fórmulas introducidas para realizar el calculo de la venta.

1 Respuesta

Respuesta
1

H o l a:

Puedes poner una imagen de la hoja1.

Pon otra imagen de la hoja2 para ver cómo deben quedar los datos.

Espero que con estas dos imágenes puedas ayudarme

Muchas gracias de antemano

Solamente que en la primera imagen no veo las filas y las columnas, no sé en cuál celda está cada dato.

Y para hacer tu ejemplo más real, los datos que tienes en la hoja1 los tienes que poner en la hoja2, ya que tengas el ejemplo armado, nuevamente me envías las 2 imágenes.

Explícame con datos y con ejemplos y tal vez otras 2 imágenes a qué te refieres con las compras por pallets.

Entre más claros sean los ejemplos más fácil será realizar la macro.

Sal u dos.

Espero que ahora lo puedas entender mejor, he metido todos los datos que necesito de la hoja 1 en la hoja 2. Estos son los datos que interesaría guardar. Así mismo que en la hoja 2 estos datos se fueran almacenando consecutivamente, la primera venta "nºregistro 1" la segundo "nº registro 2" y así sucesivamente.

Muchas gracias

H o l a:

En lo que se refiere a la hoja2, las columnas que pusiste en la primera imagen no son iguales a las que pusiste en la segunda imagen. En la segunda imagen no pusiste el NIF del cliente; así que estoy agregando el NIF en la columna "F".

Tampoco sé de dónde obtienes la venta1 ya que en 2 lados de la hoja1 tienes el número 25; así que lo estoy obteniendo de la celda E19.

Si capturas el nombre y el apellido juntos en la celda E8, se pasarán juntos a la columna D de la hoja2. Si quieres que el nombre se pase a la columna D y los apellidos a la columna E, deberás capturarlos por separada, te puse la macro para que captures el nombre en la celda E8 y los apellidos en la celda G8.

Hay varios detalles en tus ejemplos que falta que los ajustes.

Te anexo la macro con las observaciones que te hice.

Sub CopiarDatos()
'Por.Dante Amor
    Set h1 = Sheets("Hoja1")
    Set h2 = Sheets("Hoja2")
    u = h2.Range("A" & Rows.Count).End(xlUp).Row
    nreg = Val(h2.Cells(u, "A")) + 1
    u = u + 1
    '
    h2.Cells(u, "A") = nreg
    h2.Cells(u, "B") = Date
    h2.Cells(u, "C") = h1.[E7]  'num cliente
    h2.Cells(u, "D") = h1.[E8]  'nombre
    h2.Cells(u, "E") = h1.[G8]  'Apellidos
    h2.Cells(u, "F") = h1.[E9]  'nif
    h2.Cells(u, "G") = h1.[G19] 'venta 1
    h2.Cells(u, "H") = h1.[H19] 'venta 1
    h2.Cells(u, "I") = h1.[G20] 'venta 2
    h2.Cells(u, "J") = h1.[H20] 'venta 2
    h2.Cells(u, "K") = h1.[H21] 'kg
    h2.Cells(u, "L") = h1.[H32] 'Tot
    h2.Cells(u, "M") = h1.[H33] 'com
    '
    MsgBox "Datos copiados", vbInformation, "VENTAS"
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas