Macro para seleccionar con una condición

Necesito una macro, que en una selección variable, que pueda cambiarla.
Pero con la condiccion, que la columna "B" este vacía.
Y tengo esta Macro, hecha por ti:
Sub SELECCIONAR_BORRAR_CELDAS_VACIAS()
'Por.Dante Amor
For i = 808 To 1999
If Cells(i, "B") = "" Then
Rows(i).ClearContents
End If
Next
End Sub
Si puedes soluccionarmelo cuanto antes te lo agradezco

1 Respuesta

Respuesta
1

Disculpa, pero no entiendo. Puedes aclarar un poco más.

Hola Dante

1º. Después de borrar las celdas

2º. Que queden seleccionadas

3º. Para trabajar con ellas

Un saludo

¿Y puedo saber para qué las quieres seleccionadas?

Va a pasar como la vez pasada, no es posible seleccionar muchas celdas separadas, es mejor decirle a la macro qué hacer con dichas celdas.

En teoría debería ser así:

Sub SELECCIONAR_BORRAR_CELDAS_VACIAS()
'Por.Dante Amor
    For i = 808 To 1999
    If Cells(i, "B") = "" Then
    Rows(i).ClearContents
    End If
    Next
    Range("B808:B1999").SpecialCells(xlCellTypeBlanks).Select
End Sub

sal u dos

Hola Dante
Perdona que mal me explico.
La macro que me hiciste, trabaja sobre el Rango:
Range("B808:R1999").Select
Y en "A" no tengo nada
Y a partir de "S" inclusive, no uso nada
Con la macro, que me has hecho ahora:
Sub SELECCIONAR_BORRAR_CELDAS_VACIAS()
'Por.Dante Amor
For i = 808 To 1999
If Cells(i, "B") = "" Then
Rows(i).ClearContents
End If
Next
Range("B808:B1999").SpecialCells(xlCellTypeBlanks).Select
End Sub
Me selecciona el Rango:
Range("B1725:B1999").Select
Y me interesaria que me seleccionara, toda la linea:
Range("B1725:R1999").Select
Un saludo

Y sigo sin entender.

Cambia en la macro el rango por el que quieras.

Si no es lo que necesitas, deberás explicar con ejemplos lo que deseas.

También explica para qué quieres seleccionar, o toda la línea o las celdas o un rango de celdas, no entiendo qué quieres seleccionar.

Hola Dante
No te preocupes, si no me explico bien es culpa mía.
Estoy haciendo una MACRO muy grande, para limpiar el libro el 31 de diciembre.
En esta macro que me has mandado:
Sub SELECCIONAR_BORRAR_CELDAS_VACIAS()
'Por.Dante Amor
For i = 808 To 1999
If Cells(i, "B") = "" Then
Rows(i).ClearContents
End If
Next
Range("B808:B1999").SpecialCells(xlCellTypeBlanks).Select
End Sub
Me selecciona el Rango de celdas vacias:
Range("B1725:B1999").Select
Y me interesaria que me seleccionara, toda la lineas:
Range("B1725:R1999").Select
Para eliminar, Formatos de celdas en general, colores de relleno, colores líneas, posiciones etc...
Cortar las líneas totalmente limpias e insertarlas en "B808".
o, en el Range("B808:R1999").Select, ordenar y filtrar, que las celdas vacias esten en la parte de arriba y no abajo, que no se como hacerlo.
Si he vuelto, a no explicarme bien.
Dejalo es culpa mía
Un saludo

Pues sigo sin entender.

¿Y si borras la fila?

Sub SELECCIONAR_BORRAR_CELDAS_VACIAS()
'Por.Dante Amor
    Application.ScreenUpdating = False
    For i = 1999 To 808 Step -1
        If Cells(i, "B") = "" Then
            Rows(i).Delete
        End If
    Next
    Application.ScreenUpdating = True
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas