Obtener el último valor de una tabla

Código precio unitario fecha albarán
B060132 0,20510 € 30/06/2006
B9000N001 1,16000 € 20/10/2017
B9010N002 0,70000 € 30/09/2015
B9010N003 1,25100 € 09/11/2016
B9010N003 1,25100 € 21/06/2007
B9010N003 1,05800 € 08/10/2008
B9050N040 2,03500 € 21/06/2007
B9050N040 1,15900 € 08/10/2008
B9050N050 1,49900 € 21/06/2007
B9050N050 1,44500 € 13/11/2014
B9050N050 1,44500 € 12/01/2015
B9050N050 1,44500 € 07/06/2017
B9050N050 1,44500 € 12/01/2015

Tengo una tabla como esta, con más de 27000 filas y quiero obtener el precio de la fecha más reciente para cada código de artículo.

Como pueden ver cada código de artículo puede repetirse una o n veces.

¿Cómo podría hacerlo?

Respuesta
1

La forma más sencilla seria ordenar la tabla por código y en segundo lugar por fecha.

Gracias por contestar Esteban.

El caso es que este método no me sirve, porque obtengo los mismos datos ordenados de otra manera, como puedes ver:

CÓDIGO PRECIO UNITARIO FECHA ALBARÁN
B060132      0,20510 € 30/06/2006
B9000N001 1,16000 € 20/10/2017
B9010N002 0,70000 € 30/09/2015
B9010N003 1,25100 € 09/11/2016
B9010N003 1,05800 € 08/10/2008
B9010N003 1,25100 € 21/06/2007
B9050N040 1,15900 € 08/10/2008
B9050N040 2,03500 € 21/06/2007
B9050N050 1,44500 € 07/06/2017
B9050N050 1,44500 € 12/01/2015
B9050N050 1,44500 € 12/01/2015
B9050N050 1,44500 € 13/11/2014
B9050N050 1,49900 € 21/06/2007

y lo que busco es un valor para cada código de artículo, el correspondiente a la la última fecha.

Un saludo,

Una vez que has ordenado tus datos en la forma anterior,

Cópialos en una hoja nueva, y sobre esta hoja, eejcuta esta macro:

Sub quita()
f = 2
Do Until Cells(f, 1) = ""
If Cells(f, 1) = Cells(f - 1, 1) Then
Cells(f, 1).EntireRow.Delete
Else
f = f + 1
End If
Loop
End Sub

******

Suerte

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas