03/10/2007, 10:59
|
| | | Fecha de Ingreso: julio-2006 Ubicación: Lima, Peru
Mensajes: 708
Antigüedad: 18 años, 5 meses Puntos: 18 | |
Re: Agregar un nuevo dato en una fila Bueno, bueno. Supondre algunas cosas.
1- En la Hoja1 se ingresan los datos
2- En la Hoja2 se "almacenan"
3- En ambas ya tienes datos, estando en la Hoja2 ordenados por marca
4- La marca esta en la columna D
5- Los nuevos datos se ingresan, siempre, en la ultima fila de la Hoja1, de ahi se activa la macro que los envia a la Hoja2.
6- En la Hoja2 hay un autofiltro, obviamente, en los rotulos
Entonces:
Sub Insertardatos()
Dim valorb As String, filains As String
'le damos el valor de la marca ingresada
valorb = [D1].End(xlDown)
'Vamos a la hoja2 y filtramos usando de criterio la marca
Sheets("hoja2").Select
Selection.AutoFilter Field:=4, Criteria1:=valorb
'una vez filtrado obtenemos el numero de fila del ultimo dato de dicha marca
filains = [D1].End(xlDown).Row
'desactivamos el autifiltro
Selection.AutoFilter Field:=4
'insertamos una fila despues del ultimo valor de la marca
Range("a" + filains).Offset(1, 0).EntireRow.Insert
'volvemos a la hoja 1 y copiamos la ultima fila ingresada y la copiamos/pegamos en la fila insertda en la Hoja2
Sheets("hoja1").Select
[a65536].End(xlUp).Select
Range(Selection, Selection.End(xlToRight)).Copy Destination:=Worksheets("hoja2").Range("a" + filains).Offset(1, 0)
End Sub
Abraham |