Como pasar los datos repetidos de una hoja a otra

Que tal, como están, quisiera me ayudaran con esto:
El problema es que no se como hacer para que los datos repetidos en una hoja los pueda pasar a otra mediante una macro de excel lo que quiero hacer es lo siguiente: tengo una hoja1 en donde tengo un concentrado de información y en el se almacenan los clientes con sus respectivas deudas, el chiste es pasar todos los datos de un determinado cliente a otra hoja2 (es un formato de contrarecibo) en el cual tengo el numero de factura, fecha, importe, esta hoja 2 debe contener todas las facturas que me encuentre en hoja1 con determinada fecha y determinado cliente
De antemano gracias por su apoyo
1

1 respuesta

1
Respuesta de
Hola, de acuerdo, como desconozco en que Col tienes los datos yo te voy a dar un ejemplo y tu acomodas las columnas a tu necesidad:
1º Te voy a poner un Inputbox para que tu pongas el nombre del cliente( que buscaremos en la Col A)
2º Te voy a poner otro Inputbox para que pongas la fecha de las facturas que quieres que te devuelva, el formato de fecha será mm/dd/yyyy
3º Voy a suponer que los datos los tienes en filas así:
                       A B C D
Fila 1 Nomb. Cliente Nro. Factura fecha Importe
Y tal cual los tienes te los devolveré en la Hoja 2
Antes de comenzar dime si te sirve o lo quieres cambiar, explicameló tal cual te lo he puesto yo.
>Un saludo
>Julio
Hola nuevamente, tal vez no me explique bien, la información de la hoja 1 esta así:
            a b c d
1 6-jul-09 28538 ESTHER ESTUDILLO HERNÁNDEZ 100.00
2 6-jul-09 28539 ESTHER ESTUDILLO HERNÁNDEZ 500.00
3     6-jul-09    28540    ESTHER ESTUDILLO HERNANDEZ     400.00
la quiero expresar en hoja 2 asi:
                          a                                                 b                                               c
1 Nombre del proveedor: ESTHER ESTUDILLO HERNÁNDEZ
20 No. Factura Fecha Importe
21 28538 6-jul-09 100.00
22 28539 6-jul-09 500.00
23 28540 6-jul-09 400.00
Gracias por contestar
Hola, de acuerdo a tus explicaciones esta es la macro, como te dije te preguntará por el nombre del proveedor y la fecha de la factura, y realizará las comprobaciones y las que encuentre las llevará a la hoja2 en el formato que tu quieres. Evidentemente cada vez que generes un proveedor debes de limpiar la hoja2 o te los juntará todos uno debajo de otro con sus respectivas facturas y fechas.
Inserta un módulo en VBA y pones la macro si quieres asignalé un atajo de teclado para ejecutarse y listo.
Sub Facturas()
Dim nombre, celda, importe As String
Dim fecha As Date
Dim factura As Integer
nombre = InputBox("Escriba el proovedor a buscar")
fecha = InputBox("Escriba la fecha a buscar")
Sheets("Hoja1").Select
Range("C1").Select
Do While ActiveCell.Value <> ""
If ActiveCell.Value = nombre And ActiveCell.Offset(0, -2).Value = fecha Then
celda = ActiveCell.Address
factura = ActiveCell.Offset(0, -1).Value
importe = ActiveCell.Offset(0, 1).Text
End If
If ActiveCell.Value <> "" Then
Sheets("Hoja2").Select
Range("A1").Select
ActiveCell.Value = "NOMBRE DEL PROVEEDOR:"
ActiveCell.Offset(0, 1).Value = nombre
Range("A20").Select
ActiveCell.Value = "No. FACTURA"
ActiveCell.Offset(0, 1).Value = "FECHA"
ActiveCell.Offset(0, 2).Value = "IMPORTE"
ActiveCell.Offset(1, 0).Select
Do While ActiveCell.Value <> ""
ActiveCell.Offset(1, 0).Select
Loop
If ActiveCell.Value = "" Then
ActiveCell.Value = factura
ActiveCell.Offset(0, 1).Value = fecha
ActiveCell.Offset(0, 2).Value = importe
Else
Exit Do
End If
End If
Sheets("Hoja1").Select
Range(celda).Select
ActiveCell.Offset(1, 0).Select
Loop
>Julio
Hola de nuevo, disculpa mi ignorancia pero no me funciono (no me menda nada a la otra hoja) y no se que hacer, se me ocurre que en ves de meter la información en un inputbox me busque las coincidencias de lo ultimo que escribí (en proveedor que realmente es lo que me interesa por que es el proveedor que mando imprimiir, pero tengo que transcribir todos los números de factura que ingrese en la hoja 1 para imprimir el formato de la hoja 2) y de allí busque todo lo que coincida con ese nombre en la fecha de hoy y me la mande a otra hoja con todos sus números de factura que hay que pagar como en el formato de arriba
Disculpa que no me sepa explicar a ver si a si te ayudo un poco más mil gracias
Hola, explicame como es que no te manda nada a la otra hoja, ¿cómo ejecutas la macro?
Aclarame esto
>Un saludo
>Julio
Lo ejecuto con un botón, en la propiedad de click (Private Sub CommandButton1_Click())
Hola, si me hubiese explicado desde un principio que iva a ejecutar la macro en un botón dibujado en la hoja la macro te la hubiese creado para esa función, lógicamente no funciona, tiene que ser esta otra:
Private Sub CommandButton1_Click()
Dim nombre, celda, importe As String
Dim fecha As Date
Dim factura As Integer
nombre = InputBox("Escriba el proovedor a buscar")
fecha = InputBox("Escriba la fecha a buscar")
Sheets("Hoja1").Select
Range("C1").Select
Do While ActiveCell.Value <> ""
If ActiveCell.Value = nombre And ActiveCell.Offset(0, -2).Value = fecha Then
celda = ActiveCell.Address
factura = ActiveCell.Offset(0, -1).Value
importe = ActiveCell.Offset(0, 1).Text
End If
If ActiveCell.Value <> "" Then
Sheets("Hoja2").Select
ActiveSheet.Range("A1").Select
ActiveCell.Value = "NOMBRE DEL PROVEEDOR:"
ActiveCell.Offset(0, 1).Value = nombre
ActiveSheet.Range("A20").Select
ActiveCell.Value = "No. FACTURA"
ActiveCell.Offset(0, 1).Value = "FECHA"
ActiveCell.Offset(0, 2).Value = "IMPORTE"
ActiveCell.Offset(1, 0).Select
Do While ActiveCell.Value <> ""
ActiveCell.Offset(1, 0).Select
Loop
If ActiveCell.Value = "" Then
ActiveCell.Value = factura
ActiveCell.Offset(0, 1).Value = fecha
ActiveCell.Offset(0, 2).Value = importe
Else
Exit Do
End If
End If
Sheets("Hoja1").Select
Range(celda).Select
ActiveCell.Offset(1, 0).Select
Loop
End Sub
Vale pon esta macro en el botón de la hoja y la compruebas, debemos poner los InputBox 1º porque te servirán para comprobar el proveedor que quieras.
>Un saludo
>Julio
PD: Ya sabes puntúa y finaliza la consulta, con un comentario. Gracias.
Añade un comentario a esta respuesta
Añade tu respuesta
Haz clic para o
Escribe tu mensaje
¿No es la pregunta que estabas buscando?
Puedes explorar otras preguntas del tema Microsoft Excel o hacer tu propia pregunta: