Eliminación de valores cero de una tabla de datos (Microsoft Excel)
A Robert le gustaría una macro que encuentre todas las instancias de celdas en una tabla de datos que tengan un valor cero y luego borre esas celdas. Se pregunta cómo hacer esto.
Para los propósitos de esta sugerencia, voy a asumir que Robert realmente quiere borrar los valores en las celdas, no eliminar las celdas.
Además, voy a suponer que no quiere ocultar simplemente los valores cero, como se puede hacer fácilmente con un simple cambio de configuración en Excel.
(Cómo hacer esto se ha tratado en otros ExcelTips.)
En realidad, hay algunas formas en que puede deshacerse de sus valores cero. Una forma ni siquiera usa macros, sino que se basa en las capacidades de búsqueda y reemplazo de Excel:
-
Presione Ctrl + H. Excel muestra la pestaña Reemplazar del cuadro de diálogo Buscar y reemplazar.
-
Haga clic en el botón Opciones para expandir el cuadro de diálogo. (Ver figura 1)
-
En el cuadro Buscar qué, ingrese 0.
-
Asegúrese de que el cuadro Reemplazar con esté vacío.
-
Seleccione la casilla de verificación Coincidir con el contenido de toda la celda.
-
Haga clic en Reemplazar todo para realizar los reemplazos.
Incluso podría, si lo desea, traducir los pasos anteriores en una pequeña macro:
Sub ReplaceZeros() Cells.Replace What:="0", Replacement:="", _ LookAt:=xlWhole, SearchOrder:=xlByRows End Sub
Hay un límite para lo que logrará este enfoque, en particular, solo reemplazará las celdas que realmente contengan un valor 0. No reemplazará las fórmulas que se resuelvan en 0. Por ejemplo, si una celda contiene la fórmula = 4-4, que se resuelve en 0, la operación Buscar y reemplazar la ignora porque en realidad no hay un valor 0 en la celda.
Si desea algo que realmente borre las celdas que contienen 0 o se resuelven en 0, entonces necesitará un enfoque macro diferente. Aquí tienes una buena:
Sub DeleteZeroes() Dim rCell As Range For Each rCell In Selection If rCell.Value = 0 Then rCell.ClearContents End If Next End Sub
Para usar la macro, simplemente seleccione las celdas que desea afectar y luego ejecute la macro. Examina cada una de las celdas seleccionadas y elimina el contenido de cualquier celda que contenga un valor 0, y en este caso también incluye cualquier fórmula que se resuelva en 0.
_Nota: _
Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios ExcelTips), he preparado una página especial que incluye información útil.
link: / excelribbon-ExcelTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador]
.
ExcelTips es su fuente de formación rentable en Microsoft Excel.
Este consejo (13437) se aplica a Microsoft Excel 2007, 2010, 2013 y 2016.