EXCEL - Devolver datos de un modo concreto

Tengo dos columnas. A (REF) y B (NOMBRES).

Algunas referencias se repiten con diferentes nombres.

Me gustaría que en otra hoja me aparecieran registros donde en columna A saliese la ref y en la demás columnas los nombres que de esa referencia.

No sé como se hace, he probado con una tabla dinámica pero no sale traspuesto.

2 respuestas

Respuesta
1

Dante disculpe.

Me pregunta mi socia si es posible saber el proceso que hace la Macro.

Es decir, como hacerlo sin macro.

Respuesta
1

Te anexo una macro para hacer lo que necesitas.

Sigue las Instrucciones para crear 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: referencias

10. Aceptar.

11. Para ejecutarla dale click a la imagen.

Sub referencias()
'Por.DAM
    Set h1 = Sheets("Hoja1")
    Set h2 = Sheets("Hoja2")
    h2.Cells.Clear
    For i = 2 To h1.Range("A" & Rows.Count).End(xlUp).Row
        Set b = h2.Range("A:A").Find(h1.Cells(i, "A"))
        If b Is Nothing Then
            u = h2.Range("A" & Rows.Count).End(xlUp).Row + 1
            h2.Cells(u, "A") = h1.Cells(i, "A")
            h2.Cells(u, "B") = h1.Cells(i, "B")
        Else
            u = h2.Cells(b.Row, Columns.Count).End(xlToLeft).Column + 1
            h2.Cells(b.Row, u) = h1.Cells(i, "B")
        End If
    Next
End Sub

Cambia en la macro "Hoja1" por el nombre de la hoja que tiene tus referencias.

Cambia en la macro "Hoja2" por el nombre de la hoja donde van a quedar los resultados.

Hola Dante, antodo gracias por su respuesta.

He intentado ejecutar lo que me ha dicho pero no consigo el resultado, que el botón trabaje. Le adjunto enlace al libro en el que estoy trabajando para que usted pueda indicarme que estoy haciendo mal. He incluido una Hoja3 (ejemplo) donde ilustro el resultado que me gustarría obtener automáticamente de la Hoja1 en la Hoja2

Este es el enlace

https://www.dropbox.com/s/xldq4dneo4xw35g/ref.xlsm 

Muchas gracias por su atención.

Un cordial saludo

Y qué problema tienes, ya abrí tu archivo, presioné el botón que tienes en la hoja2 y me puso las referencias.

Abre nuevamente tu libro y acepta habilitar las macros

Cuando abres excel, te puede aparecer una pantalla de aviso de seguridad, presiona el botón que dice “Habilitar macros”

O bien, te puede aparecer un mensaje de advertencia en la parte superior de tu hoja, que dice: "Advertencia de seguridad" con un botón de opciones, presiona ese botón y en la siguiente ventana, selecciona la opción: "Habilitar este contenido" . Presiona Aceptar.

Ahora presiona el botón que creaste en la Hoja2, el resultado es igual al que pusiste en la hoja "ejemplo"

Si no se ejecuta la macro, te anexo tu mismo archivo pero que ya probé, recuerda habilitar las macros

https://www.dropbox.com/s/zaiea1euozo8vzy/ref%20dam.xlsm 

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas