¿Cómo puedo conseguir que Excel ordene en una columna un numero de nombres sin repetirlos?

Si tengo en una columna una serie de nombres muchos de los cuales se repiten varias veces, como puedo hacer para que Excel los ordene en otra columna sin repetirlos.
Nombre valor nombre valor
oscar 2 oscar 4
Juan 2 juan 2
Pepe 1 pepe 1
oscar 2 adrian 3
Adrian 3

1 Respuesta

Respuesta
1
El siguiente macro esta realizado en los sgtes supuestos.
1 tienes Excel 2007
2 la fila 1 es para rótulos
3 los datos parten desde fila 2 y no existen filas vacías entre el primer dato y el ultimo.
4 se respeto la estructura indicada por ti
Es decir Col A nombre Col B valor Col C nombres no reetidos extraídos de A col DE apariciones de C en A.
El macro se llama ordenar
Lo pegas en el editor de Vba ( para activar editor ALT +F11), debes pegar el macro en un "modulo", si no tienes uno insértalo desde el menu "insertar"
Sub ordena()
' copia col A en C elimina repetidos y agrega suma de apariciones del dato filtrado en D
' by calvuch 20072011
If Application.WorksheetFunction.CountA(Range("A2:A65536")) = 0 Then Exit Sub
Application.ScreenUpdating = False
Range("A2:A65536").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Range("C2").Select
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveSheet.Range("$C$2:$C$65536").RemoveDuplicates Columns:=1, Header:=xlNo
ActiveCell.Offset(0, 1).FormulaR1C1 = "=SUMIF(R2C1:R65536C1,RC[-1],R2C2:R65536C2)"
ActiveCell.Offset(0, 1).Select
Selection.AutoFill Destination:=Range("D2" & ":" & "D" & Application.WorksheetFunction.CountA(Range("C2:C65536")) + 1)
Application.ScreenUpdating = True
End Sub
El macro lo invocas como cualquier otro teclas ALT+F8.
Si te sirve CIERRA la pregunta, si tienes otras preguntas habré "otra pregunta"

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas