Buenas
¿Cómo hago en excel para que me borre las filas que contengan una celda (de una determinada columna) con un determinado valor?
Sabría hacer muy facilmente que mire todas las celdas de la columna y que la que cumpla una determinada condición la sutituya por un valor o mensaje pero lo que no sé hacer es que me borre toda la fila correspondiente.
gracias
Intenta con esto ;)
Do While ActiveCell.Value <> ""
'Recorremos 1x1 las celdas de una columna
celda = ActiveCell.Address
'Direccion auxiliar para volver a donde estabamos
If ActiveCell.Value = 2 Then
'Si el valor de la celda es dos(2) por ejemplo
Rows(ActiveCell.Row).Delete Shift:=xlUp
'Borramos toda la fila
Range(celda).Select
'Volvemos a donde estabamos
Else
Cells(ActiveCell.Row + 1, ActiveCell.Column).Select
'Si el valor no es dos(2) simplemente pasamos a la siguiente celda
End If
Loop
Saludos ;D
Gracias
Al compilar la macro en Excel me dice que
Error de compilación
el procedimiento externo no es correcto
y me deja señalada la palabra ActiveCell
También he encontrado esto:
http://www.ozgrid.com/VBA/row-delete-criteria.htm
http://www.cpearson.com/excel/deleting.htm
pero también me da error al compilar, no acepta eso del inputbox
Ah, ya está, era que se me olvidó incluirlo dentro de un sub
Muy bien, y ten en cuenta que debes de dejar como activa la celda a partir de la cual quieres revisar :P
Saludos