Macro para borrar contenido si cumple una condición

Necesito una macro que me permita borrar SOLO EL CONTENIDO de algunas celdas de la misma fila.
Ejemplo:
Tengo datos desde A1 hasta E10, (el macro funcionara al presionar un botón) En la columna E solo necesito poner la letra "X" en cualquier fila de esa columna para que la macro pueda reconocer y borrar el contenido de la celda en la columna B y D. Los contenidos en las celda en las demás columnas no deberán borrarse.
Es algo como una lista de asistencia si asistió se marcara con por y la macro borrara el contenido.

1 respuesta

Respuesta
1
Si entiendo bien... tu quieres que la macro corra y masivamente ubique todas las POR y borre los contenidos de las columnas B y D.
A B C D E
Juan  contenido1  __ contenido2           X
Luis   contenido1  __  contenido2
María  contenido1 __  contenido2           X
Por ejemplo si esta fuera tu tabla la idea sería que los contenidos de Juan y María quedaran en blanco y ... ¿qué pasa con la POR, siempre queda en la planilla?
Para hacerme una mejor idea me ayudaría que copiaras unas lineas.
Si es como entendí tu pregunta, una opción es lo siguiente:
Sub Eliminacontenidos()
   Range("E1").Select ' se ubica en la columna donde estarán las X
    i = 1 'un contandor para ir avanzando en las filas
    Do While Cells(i, 1) <> "" 'mientras tu columna A no esté vacia
        If Cells(i, 5) = "X" Then 'cada vez que encuentre una X
          ActiveCell. Offset(0, -1). Select 'se ubica en la columna D
          Selection. ClearContents 'borra el contenido
          ActiveCell. Offset(0, -2). Select 'se mueve a la columna B
          Selection. ClearContents 'borra el contenido
          ActiveCell. Offset(0, 3). Select 'la celda activa vuelve a la columna E
        End If
    ActiveCell.Offset(1, 0).Select 'selecciona la siguiente celda una fila más abajo
    i = i + 1
    Loop
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas