Borrar varias celdas a la vez aleatoriamente.

Mi pregunta es si se pueden borrar aleatoriamente y de un solo golpe un número elegido de celdas dentro de un determinado rango.
Por ejemplo: borrar 100 celdas de golpe (me refiero al contenido) en el el rango (C1048576: E1048576).

1 respuesta

Respuesta
1
No se cuanto conozcas de macros; es relativamente fácil, solo que tienes que ordenarte. Vamos por parte
1) Para borrar una celda tenés la instrucción que borra solo contenido (respeta formatos)
Cells(fila, columna). ClearContent
2) Para generar un número aleatorio entre cero y uno (en Vba) tenés la instrucción
Rnd()
3) Usando lo anterior podes generar un aleatorio en cualquier rango (para tus filas y columnas) con
=Rnd() * (Superior - Inferior) + Inferior
4) Para el rango que decís, podrías hacer algo como (esto es para una celda)
columna = Rnd()*(5-3) + 3 'No hago las cuentas para que veas la lógica; 3 y 5 serían C y D
5) Luego te quedaría
Cells(1048576, columna). ClearContent
Lo anterior es la idea; te quedaría hacer el ciclo que recorra los 100 elementos y verificar que pasa cuando el aleatorio te manda a borrar una celda que ya fue borrada; acá tenés varias opciones; repetir el proceso y/o definir que si ya se borró que borre la de al lado, etc
Igual en el ejemplo anterior que pusiste, solo tenés 3 celdas (salvo que esté mal el rango de datos que indicas).
Muchas gracias por tu respuesta.
La verdad es que no sé nada de macros, aunque espigo por aquí y por allá para aprender algo, pero para hacer algo decente me es insuficiente con los recursos de internet. Por eso pregunto por los foros cosas generales. Nuevamente, gracias.
Un saludo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas