Este comportamiento puede producirse cuando la celda contiene una cadena de longitud cero. Una cadena de longitud cero puede ser consecuencia de las condiciones siguientes:
- Una fórmula.
- Una operación de copiar y pegar.
- Una celda que contiene una cadena de longitud cero se importa desde una base de datos que admite cadenas de longitud cero y que contiene cadenas de longitud cero.
Para identificar estas celdas, empleamos la fórmula ESBLANCO. Y devolverá FALSO cuando la celda no esté vacía. Como se puede observar, a pesar de estar en blanco, la fórmula devuelve FALSO.
Una vez identificadas, para borrar su contenido disponemos de varias alternativas:
1. En Buscar y reemplazar, dejamos Buscar: vacío y en Reemplazar con: 0. Presionamos Reemplazar todos.
El resultado sería:
2. Mediante código VBA. Es necesario seleccionar el rango que deseamos limpiar antes de ejecutar el código. En lugar de ceros, como con el método anterior, dejaría las celdas en blanco.
-La solución proporcionada por galileogali es:
Option Explicit
Sub limpiar()
Dim rng As Range, celRng As Range
Set rng = Selection
For Each celRng In rng
If celRng = Empty Then
celRng.ClearContents
End If
Next celRng
End Sub
-Otra solución propuesta por glh es:
Option Explicit
Sub find_newlines()
Dim c As Object
Dim firstAddress As String
With Selection
Set c = .Find("", LookIn:=xlValues, LookAt:=xlWhole)
If Not c Is Nothing Then
firstAddress = c.Address
Do
c.Value = ""
Set c = .FindNext(c)
If c Is Nothing Then Exit Do
Loop While c.Address <> firstAddress
End If
End With
End Sub
Nube de datos
Mas facil, primero en reemplazar las celdas en blanco los remmplazas por... por ejemplo & y luego los & los reemplazas por nada...
ResponderEliminarEs más fácil si no lo necesitas hacer frecuentemente. Si el uso es frecuente, mejor usar la opción 2, guaradarla en tu libro personal y ejecutarla con un comando asignado cada vez que sea necesario. Gracias por el comentario.
Eliminar