Borrar celdas aleatoriamente

Hola.
Pido, si se puede, una macro que borre celdas aleatoriamente (una a una) en un determinado rango.
Gracias.

1 respuesta

Respuesta
1
Pues no es muy explicita tu pregunta pero se me ocurre esto:
Range("A2","B5","J20"). ClearContents
Solo tienes que poner las celdas que quieres borrar, o si pudieras dar más datos de que es lo que quieres hacer
Gracias por tu respuesta, por ahí van los tiros. Me explico:
Supongamos el rango (A1:C10), ahora quiero que al ejecutar la macro me borre el contenido de una celda (antes me expliqué mal al no decir "contenido"). Si la ejecuto otra vez, me borre el de otra y así sucesivamente.
Por otro lado, he introducido tu código y me da un error de compilación resaltándome la palabra "Range". Te muestro el código que he puesto (tu código está en la penúltima línea) por si sabes cómo solucionarlo:
Sub celda_aleatoria()
Randomize
'obtenemos un registro al azar, para lo cual,
'informamos primero de la fila inicial y final
'(para Excel 2007, cambiar estos datos)
fila_inicial = 1
fila_final = 65536
'lo mismo para las columnas
columna_inicial = 1
columna_final = 256
'generamos el número de la fila al azar
fila_elegida = Int((fila_final - fila_inicial + 1) * Rnd + fila_inicial)
'lo mismo para la columna
columna_elegida = Int((columna_final - columna_inicial + 1) * Rnd + columna_inicial)
'Nos situamos en la celda elegida
Range("A2", "B5", "J20").ClearContents
End Sub
Range("A2, B5, J20"). ClearContents
Es la sintaxis correcta, comillas solo al principio y al final de las referencias, esa linea borraría dichas celdas (A2, B5, J20)
Para elegir la celda que quieres seria así:
Cells(Fila_elegida, Columna_elegida).select
uedes saber el valor de las variables poniendolas en un msgbox, por ejm
Msgbox Fila_elegida
Msgbox Columna_Elegida

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas