Excel - Repetir registros en Excel de acuerdo a un valor en cada registro

 
Vista:
sin imagen de perfil
Val: 18
Ha disminuido su posición en 3 puestos en Excel (en relación al último mes)
Gráfica de Excel

Repetir registros en Excel de acuerdo a un valor en cada registro

Publicado por LUIS H (12 intervenciones) el 31/08/2018 23:39:00
Hola a todos

Solicito de su ayuda con lo siguiente:
Tengo una tabla de 1000 registros con un campo que se llama "Oportunidades", lo que quiero es que cada registro se repita la cantidad de veces en el campo "Oportunidades", a continuacion les doy un ejemplo de como debería quedar la tabla, mil gracias por su ayuda

Tabla Inicial
Sin-titulo

Despues de la macro o formula debería quedar asi en una nueva hoja o libro

Tabla Final

Sin-titulo1
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de wordexperto.com
Val: 6.373
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Repetir registros en Excel de acuerdo a un valor en cada registro

Publicado por wordexperto.com (2809 intervenciones) el 01/09/2018 19:48:36
Hola Luis:
Esta es la estructura más eficiente para Excel. Una base de datos y una Tabla dinámica para los informes.
https://wordexperto.com/


Captura
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Cacho R
Val: 81
Ha disminuido 1 puesto en Excel (en relación al último mes)
Gráfica de Excel

Repetir registros en Excel de acuerdo a un valor en cada registro

Publicado por Cacho R (66 intervenciones) el 02/09/2018 05:37:10
Hola! Luis
Suponiendo que el título superior izquierdo (Cédula) se encontrase en la celda A1 entonces lo que sigue te puede ser de utilidad:

1
2
3
4
5
6
7
8
9
10
11
12
13
Sub repetir_Registros()
Dim C As Range, Rng As Range, ws As Worksheet
Application.ScreenUpdating = False
Set Rng = Range("a2", [a1].End(xlDown))
Set ws = Rng.Worksheet.Parent.Worksheets.Add(after:=Rng.Worksheet)
Rng(1).Offset(-1).Range("a1:c1").Copy ws.[a1]
For Each C In Rng
  C.Range("a1:c1").Copy _
    ws.Cells(Rows.Count, "a").End(xlUp).Offset(1).Resize(C.Range("c1"))
Next
ws.[a1].CurrentRegion.Columns.AutoFit
Application.ScreenUpdating = True
End Sub

¿Lo analizarías?...
Saludos, Mario (Cacho) R.
.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar