Ver Mensaje Individual
  #11 (permalink)  
Antiguo 03/10/2007, 10:59
Avatar de abrahamvj
abrahamvj
 
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