martes, 13 de septiembre de 2016

Cómo reducir el tamaño de un archivo Excel

Cada herramienta tiene un alcance. Excel no está preparado para manejar grandes volúmenes de datos. Cuando tus archivos de Excel tienen un gran tamaño, como aquellos que superan los 100 MB, pueden comenzar a arrojarte fallas y entorpecer tu trabajo. Errores durante la apertura, lentitud ante cualquier operación por simple que sea, fallas durante el guardado, son algunos de los problemas más frecuentes que suelen presentarse al trabajar con archivos grandes en Excel. Reducir el tamaño de un archivo Excel puede entonces volverse clave.
No podemos solucionar todos los problemas, pero a lo largo de este artículo podrás descubrir varios trucos que te harán más sencillo trabajar con archivos grandes en Excel y te permitirán ahorrar el más valioso de tus recursos: tu tiempo.
Para desarrollar este tutorial empleamos un archivo Excel de 126 MB, con datos de números aleatorios cargados en el rango A1:CV100000, para un total de 100.000 registros, 100 columnas, 10.000.000 de datos, sin formulaciones, ni imágenes, ni código VBA.
enter image description here

NOTA IMPORTANTE

Antes de probar los métodos detallados en este tutorial te recomiendo que pruebes los enfoques más simples. Por ejemplo valida si tu archivo contiene cálculos redundantes, gráficos que no estás utilizando, hojas de trabajo, fórmulas o tablas dinámicas obsoletas y elimina estos elementos. Del mismo modo si has insertado imágenes revisa su tamaño por que estas suelen ocupar mucho espacio. Prueba comprimir todas las imágenes de tu libro a una resolución menor.
Recuerda siempre guardar una copia del archivo original antes de intentar de reducir su tamaño. En caso de no hacerlo corres el riesgo de perder toda tu información si alguna de las operaciones de reducción falla.

1. BORRA EL CONTENIDO DE TODAS LAS CELDAS QUE NO ESTÉS UTILIZANDO.

Tamaño del archivo original: 126 MB
Tamaño del archivo tras aplicar el método: 99,8 MB
Espacio ahorrado con este método: 26,2 MB
Tasa de Reducción: -21 %
Puede parecer una tontería pero no imaginas como este simple truco puede ayudarte a reducir el tamaño de un archivo Excel muy pesado.
¿Cómo hacerlo? Busca la última fila en uso dentro de cada una de las hojas de tu archivo, borra todo el contenido de las filas que se encuentren por debajo de esta, busca la última columna de cada una de las hojas de tu archivo, borra todas las columnas que se encuentren después de esta, guarda tu archivo y vuelve a abrirlo.
Tip: Utiliza el método abreviado Ctrl+Fin para encontrar la última celda con datos de la hoja. A partir de allí puedes seleccionar toda la fila inferior y presionar Ctrl+Shift+Abajo. Para finalizar con el método abreviado Ctrl- puedes borrar todo el contenido de las celdas seleccionadas. Repite los pasos anteriores pero esta vez seleccionando toda la columna posterior a la última celda encontrada para borrar todo el contenido restante.
En nuestra práctica tras aplicar este método logramos reducir el tamaño del archivo Excel de prueba un 21%. Nada mal para una técnica tan sencilla. ¿No crees?
enter image description here

2. SALVA TUS ARCHIVOS EN FORMATO .XLSB

Tamaño del Archivo Original: 126 MB
Tamaño del Archivo Reducido: 80,8 MB
Espacio Ahorrado con este Método: 45,2 MB
Tasa de Reducción: -36 %
Te voy revelar algo. El clásico formato .xlsx de Excel es en realidad algo similar a un documento ZIP que incluye un archivo XML. Si aún lo dudas, adelante, toma un archivo Excel con el que quieras experimentar, cambia su extensión .xlsx por una extensión .zip y descomprime el resultado con tu aplicación preferida. ¿Sorprendido?
En cambio los archivos de Excel que son guardados con el formato .xlsb son archivos binarios. Esto tiene grandes ventajas cuando trabajamos con volúmenes grandes de información, considerando que el formato .xlsb emplea considerablemente menos espacio que el formato .xlsx. En algunos casos puedes alcanzar una reducción de hasta 50% menos tamaño.
Adicionalmente también ahorrarás tiempo al abrir y guardar tus archivos, mejorará el rendimiento del archivo y obtendrás más rápida respuesta a las operaciones que apliques, dado que los datos binarios se cargan más rápido que los datos de texto de un archivo XML. Por poco lo olvido: también podrás desarrollar y guardar formulas por encima del límite de los 8192 caracteres. Si acaso necesitas hacer una fórmula de ese largo, claro.
Aunque las ventajas son muchas existen algunas desventajas que debes considerar. Por ejemplo, puedes encontrar algunos problemas de compatibilidad si intentas usar tus archivos con ser vicios de terceros que usen el formato OpenXML para leer archivos Excel. Así que si no piensas integrar los datos con otras aplicaciones no hay mayor drama, usa el formato .xlsb.
Como resultado de aplicar este método en nuestra práctica logramos reducir un sorprendente 36%. ¡Sin dudas una excelente opción!
enter image description here

3. ELIMINAR EL FORMATO DE TODAS LAS CELDAS EN USO.

Tamaño del Archivo Original: 126 MB
Tamaño del Archivo Reducido: 99,8 MB
Espacio Ahorrado con este Método: 26,2 MB
Tasa de Reducción: -21 %
Los formatos hacen estéticamente más atractivos tus archivos y en algunos casos nos facilitan la legibilidad de los datos. Pero cuando se trata de reducir el tamaño de un archivo Excel excesivamente grande lo importante no es su estética. Lo que te interesa es trabajar con mayor eficiencia. así que lo mejor es eliminar todos los formatos: color de fondo de las celdas, color de fuentes, formatos condicionales, negritas, etc.
Aplicar esta técnica nos permitió en nuestro experimento reducir el tamaño del archivo Excel un 21%. Una reducción similar a la alcanzada con el método 1. Archivos planos e incoloros pero más ligeros.
enter image description here

4. DESCOMPRIME EL ARCHIVO EXCEL Y COMPRIME DE NUEVO CON UN MÉTODO DE COMPRESIÓN MEJOR.

Tamaño del Archivo Original: 126 MB
Tamaño del Archivo Reducido: 109 MB
Espacio Ahorrado con este Método: 17 MB
Tasa de Reducción: -13%
¿Qué tal si aprovechamos algo de lo que aprendimos en el método 2? Como ya lo hablamos el formato .xlsx de Excel es en realidad algo similar a un documento ZIP con un archivo XML.  Podemos aprovechar esta propiedad para intentar de comprimir aún más con una herramienta clásica de compresión de archivos.
Primero que todo crea una copia del libro Excel a reducir y guarda tu archivo original en un lugar seguro. A continuación cambia la extensión de tu archivo Excel del .xlsx a .zip.
En el caso de que no puedas ver las extensiones de tus archivos debes hacer un pequeño cambio en el explorador. En Windows, entra en tu disco C o en cualquier carpeta de datos, busca la ficha Organizar y selecciona la opción Opciones carpeta y búsqueda. En la ventana emergente Opciones de carpeta selecciona la ficha Ver y desmarca la opción Ocultar las extensiones de archivo para tipos de archivos conocidos.
Opciones de carpeta Windows
Presiona el botón Aceptar y ya podrás desde ahora ver y editar las extensiones de tus archivos.
Ahora es momento de hacer el cambio de extensión al archivo al cual queremos reducir el tamaño de .xlsx a .zip, tal como si cambiaras el nombre del archivo tan solo que editando también la extensión del mismo.
enter image description here
Descomprime el archivo ZIP resultante con tu herramienta favorita (WinZip, WinRar, 7-Zip, etc.). Deberás obtener como resultado un archivo XML y tres carpetas como las de la siguiente imagen:
enter image description here
Selecciona los archivos resultantes nuevamente y vuelve a comprimir todo seleccionando el mejor método de compresión que tengas a disposición en tu herramienta. Para finalizar cambia la extensión de tu archivo, de .zip a .xlsx.
Como resultado de aplicar este método alcanzamos reducir el tamaño del archivo Excel original en un 13%. La peor tasa de reducción entre todos los métodos seleccionados, pero de seguro si combinamos este método con algunos de los anteriores nos ayuda a seguir restando peso al archivo.
enter image description here

5. APLICAR UNA COMBINACIÓN DE MÉTODOS.

Si aplicamos una combinación de los métodos anteriores ¿Cuanto lograremos reducir en total el tamaño de nuestro abultado archivo Excel?
Lo primero a considerar es cuales de los métodos anteriores combinar. Solo hace sentido solo combinar el 1, 2 y 3, es decirborrar el contenido de todas las celdas que no estés utilizando, eliminar el formato de todas las celdas en uso y por último guardar el archivo como libro binario de Excel.
La reducción en este caso es de un 37% menos peso que el archivo original, logrando bajar 46,2 MB en total. Sin duda la mayor responsabilidad de la baja la tiene la conversión a libro binario de Excel y algo ayuda aplicar los otros métodos.

Función BUSCARV en Excel: Tutorial paso a paso

Si posees un conjunto de datos y necesitas extraer algún valor basándote sólo en un campo de referencia, puedes utilizar la función de Excel BUSCARV. El significado de la “V” en el nombre de la función refiere a que hace una búsqueda vertical; en la imagen anexa podrás observar de forma sencilla cual es la sintaxis de esta función que puedes encontrar dentro del grupo de funciones de Búsqueda y Referencia de Excel.

FUNCIÓN BUSCARV EN EXCEL 

SINTAXIS DE LA FUNCIÓN DE EXCEL BUSCARV

=BUSCARV(valor_buscado;matriz_buscar_en;indicador_columnas;ordenado)
Viéndola desde un punto de vista mas simple la función BUSCARV se puede traducir en:
=BUSCARV(¿Qué criterio referencial deseas buscar?;¿Dónde buscas ese criterio referencial?;¿El valor de qué columna quieres que te muestre?;¿Quieres que el valor sea exacto o aproximado?)

ESTRUCTURA DE LA FUNCIÓN DE EXCEL BUSCARV

Valor_buscado: se entiende como el criterio que se va a buscar en la primera columna de la matriz de tabla. Valor_buscado puede ser un valor o una referencia. Si valor_buscado es inferior al menor de los valores de la primera columna de matriz_buscar_en, BUSCARV devuelve al valor de error #N/A.
Matriz_buscar_en: Dos o más columnas de datos. Usa una referencia a un rango o un nombre de rango. Los valores de la primera columna de matriz_buscar_en son los valores que busca valor_buscado.
  • Es importante resaltar que al momento de seleccionar la matriz donde buscaremos la información, el valor referencial debe estar en la primera columna.
Estos valores pueden ser texto, números o valores lógicos. Las mayúsculas y minúsculas del texto son equivalentes
Indicador_columnas: Es el valor del número de columna de matriz_buscar_en desde la cual debe devolverse el valor coincidente. Si el argumento indicador_columnas es igual a 1, la función devuelve el valor de la primera columna del argumento matriz_buscar_en; si el argumento indicador_columnas es igual a 2, devuelve el valor de la segunda columna de matriz_buscar_en y así sucesivamente. Si indicador_columnas es:
  • Si es inferior a 1, devuelve al valor de error #VALUE!
  • Si es superior al número de columnas de matriz_buscar_en, devuelve el error #REF!
Ordenado: Es el valor lógico que especifica si la función va a buscar una coincidencia exacta o aproximada:
  • Si se omite o es VERDADERO, se devolverá una coincidencia exacta o aproximada. Si no localiza ninguna coincidencia exacta, devolverá el siguiente valor más alto inferior a valor_buscado.
  • Los valores de la primera columna de matriz_buscar_en deben estar clasificados según un criterio de ordenación ascendente; en caso contrario, es posible que la función no devuelva el valor correcto. Para obtener más información.
  • Si es FALSO, la función sólo buscará una coincidencia exacta. En este caso, no es necesario ordenar los valores de la primera columna de matriz_buscar_en. Si hay dos o más valores en la primera columna de matriz_buscar_en, se utilizará el primer valor encontrado. Si no se encuentra una coincidencia exacta, se devolverá el valor de error #N/A.


lunes, 12 de septiembre de 2016

Cómo generar un número al azar (sorteo) en Excel

En Excel, obtener un número al azar dentro de un rango de posibilidades es muy fácil. Veamos cómo conseguirlo.
Generar número aleatorio 1

La función idónea para este fin es ALEATORIO.ENTRE, cuya sintaxis es:
ALEATORIO.ENTRE(número inicialnúmero final)

El resultado de la función será un número al azar, dentro del rango determinado por el número inicial y el final que hayamos indicado como argumentos. Ambos números (inicial y final) serán tomados en cuenta y podrán tomar parte en el resultado.

Los números inicial y final podrán ser expresados de las siguientes maneras:
  1. Escribiéndolos directamente. Por ejemplo: =ALEATORIO.ENTRE(8;54)
  2. Haciendo referencia a las celdas que contengan los números inicial y final. Por ejemplo:=ALEATORIO.ENTRE(A1;A2)
  3. Ingresando fórmulas que devuelvan los números inicial y final. Por ejemplo:=ALEATORIO.ENTRE(PROMEDIO(A1:A2);SUMA(A1:A2))

Generar número aleatorio 2

Generar número aleatorio 3