Excel demasiados formatos de número personalizados: cómo eliminar formatos no utilizados
🔍 WiseChecker

Excel demasiados formatos de número personalizados: cómo eliminar formatos no utilizados

Excel puede ralentizarse o mostrar un error cuando su libro de trabajo contiene demasiados formatos de número personalizados. Esto ocurre porque Excel almacena estos formatos en el propio archivo, y una gran colección puede causar problemas de rendimiento. Este artículo explica cómo identificar y eliminar formatos personalizados no utilizados para mejorar la velocidad y estabilidad de su libro. Aprenderá un método de limpieza manual y cómo usar una macro de VBA para trabajos más grandes.

Puntos Clave: Gestión de Formatos de Número Personalizados

  • Cuadro de diálogo Formato de celdas (Ctrl+1): La ubicación principal para ver, aplicar y eliminar formatos de número personalizados del libro activo.
  • Macro VBA para eliminar formatos: Un script que puede eliminar automáticamente todos los formatos de número personalizados que no estén siendo utilizados por ninguna celda.
  • Copiar celdas entre libros: Esta acción es la forma más común de que se agreguen y acumulen formatos personalizados no utilizados con el tiempo.

ADVERTISEMENT

Por Qué se Acumulan los Formatos de Número Personalizados y Causan Problemas

Los formatos de número personalizados son herramientas potentes para mostrar datos. Puede crear formatos para números de teléfono, códigos especiales o colores de texto condicionales. A diferencia de los estilos, estos formatos se almacenan directamente dentro del archivo del libro donde se crean.

El problema principal surge cuando copia celdas o rangos de un libro a otro. Excel trae todos los formatos de número personalizados del libro de origen al libro de destino, incluso si las celdas pegadas no los utilizan. Con el tiempo, este proceso puede agregar cientos de formatos no utilizados. Excel debe cargar y gestionar esta lista cada vez que se abre el archivo, lo que puede provocar un rendimiento más lento, archivos de mayor tamaño y errores ocasionales cuando se acerca al límite interno.

Cómo Rastrea Excel los Formatos Personalizados

Excel mantiene una lista interna oculta para cada libro. No puede ver esta lista en una hoja de cálculo. La única forma de interactuar con ella es a través del cuadro de diálogo Formato de celdas o mediante VBA. Los formatos solo se eliminan de esta lista cuando los elimina manualmente o cuando ninguna celda de todo el libro los referencia y utiliza una macro para limpiarlos.

Pasos para Encontrar y Eliminar Manualmente Formatos No Utilizados

Para libros con un número manejable de formatos personalizados, puede usar el cuadro de diálogo integrado. Este método es mejor cuando sabe qué formatos específicos desea eliminar.

  1. Seleccione cualquier celda y abra el cuadro de diálogo Formato de celdas
    Haga clic en cualquier celda de su libro. Presione Ctrl+1 para abrir el cuadro de diálogo Formato de celdas.
  2. Navegue a la lista de formatos de número personalizados
    Haga clic en la pestaña Número en la parte superior del cuadro de diálogo. En la lista Categoría a la izquierda, seleccione Personalizada. El lado derecho del cuadro de diálogo mostrará la lista Tipo, que contiene todos los formatos integrados y personalizados disponibles en este libro.
  3. Identifique y seleccione un formato personalizado no utilizado
    Desplácese por la lista Tipo. Los formatos personalizados que haya creado o importado aparecerán al final de la lista. Sus códigos se verán como ##-### o [Blue]0.0. Seleccione un formato que crea que no se utiliza en ninguna celda.
  4. Elimine el formato seleccionado
    Con el formato no utilizado seleccionado en la lista Tipo, haga clic en el botón Eliminar ubicado en la parte inferior derecha del cuadro de diálogo. El formato se eliminará inmediatamente de la lista del libro. Haga clic en Aceptar para cerrar el cuadro de diálogo.

ADVERTISEMENT

Uso de una Macro VBA para Limpiar Todos los Formatos No Utilizados

Eliminar formatos manualmente no es práctico para colecciones grandes. Una macro VBA puede escanear el libro y eliminar todos los formatos personalizados que no estén aplicados activamente a una celda. Este es el método de limpieza más efectivo.

  1. Abra el editor de Visual Basic para Aplicaciones
    Presione Alt + F11 en su teclado. Esto abrirá la ventana del editor de VBA.
  2. Inserte un nuevo módulo estándar
    En el menú del editor, haga clic en Insertar > Módulo. Aparecerá una ventana de código en blanco llamada Módulo1 en el lado derecho.
  3. Copie y pegue el código de la macro de limpieza
    Copie el siguiente código VBA y péguelo en la ventana del módulo en blanco.

    Sub DeleteUnusedNumberFormats()
    Dim fmt As NumberFormat
    Dim rng As Range
    Dim usedFmts As New Collection
    On Error Resume Next

    ' Collect all number formats currently in use
    For Each rng In ActiveSheet.UsedRange
    If Not IsError(rng.Value) Then
    usedFmts.Add rng.NumberFormat, CStr(rng.NumberFormat)
    End If
    Next rng

    ' Delete custom formats not in the used collection
    For Each fmt In ActiveWorkbook.NumberFormats
    If Left(fmt, 1) <> "_" And fmt <> "General" Then
    If fmt Like "*;*" Or fmt Like "*[[]*[]]*" Or fmt Like "*?*" Then
    On Error Resume Next
    Dim key As String
    key = CStr(fmt)
    usedFmts.Item key
    If Err.Number <> 0 Then
    fmt.Delete
    End If
    On Error GoTo 0
    End If
    End If
    Next fmt
    MsgBox "Cleanup complete."
    End Sub

  4. Ejecute la macro para eliminar formatos
    Cierre la ventana del editor de VBA y regrese a Excel. Presione Alt + F8 para abrir el cuadro de diálogo Macro. Seleccione la macro llamada DeleteUnusedNumberFormats y haga clic en Ejecutar. La macro se ejecutará y mostrará un mensaje cuando termine. Guarde su libro.

Si la Macro No Resuelve los Problemas de Rendimiento

Excel Sigue Funcionando Lentamente Después de la Limpieza de Formatos

Si el rendimiento no mejora, el problema puede no estar relacionado con los formatos de número. Verifique otras causas comunes como funciones volátiles, reglas de formato condicional excesivas o vínculos a libros externos. Use el menú Fórmulas > Opciones de cálculo para establecer el cálculo en Manual y vea si la velocidad mejora.

El Mensaje de Error Sobre Demasiados Formatos Persiste

Este error indica que el límite interno de formatos del libro aún se está superando. La macro puede haber omitido formatos utilizados en filas, columnas u otras hojas de cálculo ocultas. Ejecute la macro una vez para cada hoja de cálculo en el libro. Además, verifique si hay formatos aplicados a columnas o filas completas, ya que son más difíciles de detectar para la macro si las celdas están vacías.

Los Formatos Personalizados Reaparecen Después de Guardar y Reabrir

Esto generalmente significa que los formatos están almacenados en un archivo de plantilla de Excel que se carga automáticamente. Verifique si el archivo se guardó como Plantilla de Excel (.xltx) o si tiene un libro personal con macros que agrega formatos. Abra Excel en Modo seguro manteniendo presionada la tecla Ctrl mientras inicia el programa para probar si un complemento está inyectando los formatos.

ADVERTISEMENT

Diferencias Clave entre Eliminación Manual y Macro VBA

Elemento Eliminación Manual mediante el Cuadro de Diálogo Formato de Celdas Limpieza con Macro VBA
Mejor Para Eliminar algunos formatos específicos conocidos Limpiar colecciones grandes y desconocidas de formatos
Velocidad Lenta, requiere que el usuario revise cada formato Rápida, proceso automatizado
Riesgo de Error Alto, el usuario podría eliminar un formato aún en uso Bajo, la macro verifica el uso de celdas antes de eliminar
Habilidad Requerida Navegación básica de Excel Capacidad para ejecutar una macro VBA preescrita
Alcance Formatos en el libro activo solamente Formatos en el libro activo solamente

Ahora puede gestionar eficientemente los formatos de número personalizados en sus libros de Excel. Use el método manual en el cuadro de diálogo Formato de celdas para eliminar rápidamente formatos específicos. Para una limpieza completa, ejecute la macro VBA proporcionada para eliminar automáticamente todos los formatos no utilizados. Para prevenir que el problema se repita, tenga cuidado al copiar datos entre archivos. Un consejo avanzado útil es usar la macro con regularidad, quizás mensualmente, para mantener sus libros clave funcionando a velocidad óptima.

ADVERTISEMENT