Eliminar cierta cantidad de celdas de acuerdo a un total de celdas

Disculpa tengo un caso:

Tengo una cierta cantidad de registros en excel, y quisiera eliminar un determinado numero de filas (las filas siempre serán continuas) de acuerdo al total de registros, por ejemplo en mi caso yo tengo el registro de todos los alumnos matriculados por ciclo (cada uno con sus promedios), y al final de cada ciclo académico me piden encontrar quienes son los alumnos que integran el tercio, quinto y decimo superior, es decir quisiera aplicar una formula o macro que según la cantidad total de registros (ya que por cada ciclo académico el numero de alumnos será diferente), me elimine las filas que no me interesen para así poder encontrar los registros que me solicitan. Por ejemplo si tuviera un total de 4000 registros, para hallar el quinto superior, tendría que eliminar a partir de la fila 801 hasta la 4000, para poder quedarme con los primeros 800, igual para el caso del tercio y décimo superior.

1 Respuesta

Respuesta
1

Acá te paso. Serian 3 macros diferentes, pero son simples.

Borrar4Quintos deja el primer quinto y así.

Lo que no estoy seguro es como saber bien la cantidad. Tal vez convenga una instrucción alternativa:
En lugar de

cantidad = Cells.SpecialCells(xlCellTypeLastCell).Row

Puede ser mejor hacer

cantidad = Range("a1").End(xlDown).Row

Pero te tenes que asegurar que hay informacion en toda la columna A.

Sub Borrar4quintos()
'Cuento celdas hasta la ultima llena
cantidad = Cells.SpecialCells(xlCellTypeLastCell).Row
Desde = Round(cantidad / 5, 0) + 1
Rows(Desde & ":" & cantidad).Delete
End Sub
Sub Borrar2Tercios()
'Cuento celdas hasta la ultima llena
cantidad = Cells.SpecialCells(xlCellTypeLastCell).Row
Desde = Round(cantidad / 3, 0) + 1
Rows(Desde & ":" & cantidad).Delete
End Sub
Sub Borrar9Decimos()
'Cuento celdas hasta la ultima llena
cantidad = Cells.SpecialCells(xlCellTypeLastCell).Row
Desde = Round(cantidad / 10, 0) + 1
Rows(Desde & ":" & cantidad).Delete
End Sub

Muchas gracias, ahora voy a correr la macro, muy a parte de eso tengo otra consulta.

¿Se podría insertar los nuevos datos del tercio, quinto y décimo, cada uno en una hoja distinta? Es decir el grupo de tercio en una hoja, el de quinto en otra y el de décimo en otra?

A la espera de sus comentarios, muchas gracias.

Seria algo así

Sub Percentiles()
'Cuento celdas hasta la ultima llena
Set h1 = ActiveSheet
h1.Activate
cantidad = Cells.SpecialCells(xlCellTypeLastCell).Row
hasta = Round(cantidad / 5, 0)
Rows(1 & ":" & hasta).Select
Selection.Copy
Sheets.Add
ActiveSheet.Name = "PrimerQuinto"
ActiveSheet.Paste
h1.Activate
cantidad = Cells.SpecialCells(xlCellTypeLastCell).Row
hasta = Round(cantidad / 10, 0)
Rows(1 & ":" & hasta).Select
Selection.Copy
Sheets.Add
ActiveSheet.Name = "PrimerDecimo"
ActiveSheet.Paste
h1.Activate
cantidad = Cells.SpecialCells(xlCellTypeLastCell).Row
hasta = Round(cantidad / 3, 0)
Rows(1 & ":" & hasta).Select
Selection.Copy
Sheets.Add
ActiveSheet.Name = "PrimerTercio"
ActiveSheet.Paste
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas