Buscar coincidencias en la columna "A" y ordenarlas en distintas columnas

Necesito encontrar coincidencias en la COLUMNA "A" y que esas coincidencias me las acomode en la columna "B","C" y "D", en orden y sin dejar espacios entre un dato y el otro de cada columna...

Ejemplo correcto:

COLUMNA "A" COLUMNA "B" COLUMNA "C" COLUMNA "D"

1 1 2 3

1 1 3

2 1

3

1

3

Ejemplo incorrecto:

COLUMNA "A" COLUMNA "B" COLUMNA "C" COLUMNA "D"

1 1

1 1

2 2

3 3

1 1

3 3

1 respuesta

Respuesta
1

El primer dato siempre va ir en la primera columna ("B"), en tu ejemplo el número 1 es el primer dato, entonces lo pongo en la columna "B", ¿el siguiente número que es diferene a 1 es el 2 entonces lo pongo en la columna "C"?

Te realizaría una macro, ¿quieres qué te la prepare?

Exacto, así es como se tienen que organizar los datos, solamente cabe mencionar que no siempre el primer dato sera el "1" pueden variar en orden puede empezar con "2" o con "3"... pero siempre se tienen que organizar no importa el orden original siempre en un orden en la columna que corresponde.

Si me puedes realizar la macro te estaría muy agradecido.

Saludos.

Te anexo la macro.

Sub OrdenarCoincidencias()
'Por.Dante Amor
    Application.ScreenUpdating = False
    Rows(1).Insert
    uc = Cells(2, Columns.Count).End(xlToLeft).Column
    If uc = 1 Then uc = 2
    uf = Range("A" & Rows.Count).End(xlUp).Row
    If uf = 1 Then uf = 2
    Range(Cells(2, 2), Cells(uf, uc)).ClearContents
    Cells(2, 2) = Cells(2, 1)
    For i = 3 To uf
        existe = False
        For j = 2 To Cells(2, Columns.Count).End(xlToLeft).Column
            Set b = Columns(j).Find(Cells(i, "A"), lookat:=xlWhole)
            If Not b Is Nothing Then
                u = Cells(Rows.Count, j).End(xlUp).Row + 1
                Cells(u, j) = Cells(i, "A")
                existe = True
                Exit For
            End If
        Next
        If existe = False Then
            uc2 = Cells(2, Columns.Count).End(xlToLeft).Column + 1
            Cells(2, uc2) = Cells(i, "A")
        End If
    Next
    Rows(1).Delete
    Application.ScreenUpdating = True
    MsgBox "Fin"
End Sub

Sigue las Instrucciones para un botón y ejecutar la macro

  1. Abre tu libro de Excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. En el menú elige Insertar / Módulo
  4. En el panel del lado derecho copia la macro
  5. Ahora para crear un botón, puedes hacer lo siguiente:
  6. Inserta una imagen en tu libro, elige del menú Insertar / Imagen / Autoformas
  7. Elige una imagen y con el Mouse, dentro de tu hoja, presiona click y arrastra el Mouse para hacer grande la imagen.
  8. Una vez que insertaste la imagen en tu hoja, dale click derecho dentro de la imagen y selecciona: Tamaño y Propiedades. En la ventana que se abre selecciona la pestaña: Propiedades. Desmarca la opción “Imprimir Objeto”. Presiona “Cerrar”
  9. Vuelve a presionar click derecho dentro de la imagen y ahora selecciona: Asignar macro. Selecciona: OrdenarCoincidencias
  10. Aceptar.
  11. Para ejecutarla dale click a la imagen.

Saludos. Dante Amor

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas