Almacenar los datos de un rango en una sola variable

Tengo la siguiente columna que pertenece al objeto Tabla1

Necesito almacenear en una sola variable todas las fechas en orden descendente y con un único registro, es decir que no se repitan los valores duplicados en dicha variable

Elsa Matilde James Bond Excel Macros

1 Respuesta

Respuesta
1

Muchos datos en una variable en VBA equivale a una matriz o array de datos ¿no se si eso es lo que buscas?, mira el ejemplo, en el panel locales veras que los daos de fechas únicas son almacenados en una arreglo de variables al que llame matriz, lo pude haber hecho un array solo que es más complicado, lleva más código y es casi lo mismo que la matriz de datos, en la columna C cree una tabla auxiliar que en filtra los duplicados y deja solo fechas unicas esta tabla se borra una vez que los datos son cargados a la matriz

y esta es la macro

Sub almacena_fechas()
busca = WorksheetFunction.Match("inicio", Range("a:a"), 0)
filas = Range("a1").CurrentRegion.Rows.Count
Set datos = Range("a1").Rows(busca + 1).Resize(filas - cuenta - 3)
With datos
    .Copy: .Columns(3).Resize(filas, 1).PasteSpecial
End With
With Selection
    .Sort _
    key1:=Range(.Columns(1).Address), order1:=xlDescending
    .RemoveDuplicates Columns:=1
    matriz = .CurrentRegion
    .Clear
End With
Erase matriz
Set datos = nohing
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas