martes, septiembre 05, 2006

Excel cumple 21 años

Excel cumple hoy 21 años, de acuerdo Daily Dose of Excel:

According to Bill Kammermeier’s Today in Computer History desk calendar, Excel was released on this date in 1985 for the Apple Macintosh.


La nota trae algunos enlaces, de los cuales me han resultado interesantes A brief History of Spreadsheets y la página de los creadores de VisiCalc.

No he logrado encontrar artículos en español de un nivel semejante. Así que habrá que leer en inglés.



Categorías: Varios_

Technorati Tags:

Limitar el área de trabajo en Excel – Actualización

El método de limitar el área de trabajo en Excel que proponía en mi entrada del mes de mayo, adolece de un serio defecto. Al guardar el archivo, Excel no conserva los cambios introducidos en el cuadro de propiedades. De manera que al volver a abrir el archivo después de haberlo guardado, el área restringida no existe.

La manera de sobreponerse a este problema es con una pequeña macro. De hecho se trata de un evento. Estas macros, como su nombre sugiere, son activadas cuando algún evento en particular sucede.

En nuestro caso queremos que cada vez que abramos el archivo, Excel establezca el área restringida. Suponiendo que el área sea el rango B3:E10 de la Hoja1, procedemos así:

1 – Abrimos el editor de Visual Basic (Alt+F11 o Herramientas--Macros--Editor Visual Basic)

2 – El la ventanilla VBAProject del archivo, seleccionamos con un clic el objeto ThisWorkbook




3 – Elegimos la opción Workbook. Inmediatamente debajo de Private Sub Workbook_Open(), escribimos Sheets(1).ScrollArea = "B3:E10"



4 - Volvemos al cuaderno Excel y lo guardamos.

A partir de este momento, cada vez que abrimos el cuaderno (Workbook_Open) Excel define el área de trabajo de la Hoja1 con el rango B3:E10.


Categorías: Varios_

Technorati Tags: ,

domingo, septiembre 03, 2006

Base de datos de imágenes en Excel

Excel nos permite manejar pequeñas bases de datos (y si hacemos esto es importante tener en cuenta las limitaciones de Excel en este tema). Sobre esto ya he escrito una serie de notas en el pasado.

Cada tanto veo consultas en los distintos foros sobre la posibilidad de manejar una base de datos con imágenes. La idea es, por ejemplo, tener un catálogo de partes o productos con sus respectivas imágenes en una hoja. En otra hoja tener la posibilidad de elegir un producto y que aparezca su imagen.
Si bien esto es posible y mostraremos en esta nota como hacerlo, me apresuro a aclarar que Excel no es la herramienta recomendable para este tipo de tareas.

Si a pesar de mis advertencias, han decidido crear un
catálogo con imágenes en Excel, estos son los pasos a dar.

1 – Abrimos un cuaderno Excel en blanco. Cambiamos el nombre de la Hoja1 a "Base de datos" y el nombre de la Hoja2 a "Catalogo" (este paso no es indispensable).

2 – En la hoja "Base de datos" creamos nuestro catálogo de imágenes. En la columna A ponemos el número de catálogo, en la columna B la imagen del primer producto en nuestra lista y en la columna C la descripción del producto.






Como pueden ver he adaptado el tamaño de la imagen y el alto de la fila. Para este ejemplo he utilizado alguno de los productos de
mi empresa (si alguno de ustedes se ocupa de irrigación, tuberías, aguas corrientes o gas, está invitado a visitar el sitio).

3 – Definimos un
nombre que contenga la lista de números de catálogo, al que llamaremos "Lista". Para que este nombre sea dinámico usamos la siguiente fórmula:

=DESREF('Base de datos'!$A$2,0,0,CONTARA('Base de datos'!$A:$A)-1,1)

3 – Definimos otro nombre, "Imagen", con una fórmula que conecte el número de catálogo en la columna A con la imagen correspondiente en la columna B:

=DESREF('Base de datos'!$B$2,COINCIDIR(Catalogo!$A$3,Lista,0)-1,0,1,1)


4 – En la hoja "Catálogo" en la celda A3 creamos una lista desplegable con Validación de datos




5 – En la celda B3 copiamos la primer imagen de nuestro catalogo

Y ahora el truco importante: seleccionamos con un clic la imagen, activamos la barra de fórmulas con un solo clic y en ella escribimos "=Imagen" (sin las comillas).




6 - Para que aparezca la descripción correspondiente introducimos es fórmula en la celda C3

=DESREF('Base de datos'!A2,COINCIDIR(Catalogo!A3,Lista,0)-1,2)


Otra variante sería usar BUSCARV, para lo cual tendríamos primero que definir un nombre para el rango de datos, "Descripcion" que contiene esta fórmula

=DESREF('Base de datos'!$A$2,0,0,CONTARA('Base de datos'!$A:$A)-1,3)

y luego escribir la siguiente fórmula en la celda C3
=SI(ESBLANCO(A3),"",BUSCARV(A3,Descripcion,3,0))

Con esto terminamos nuestra tarea y disponemos de un catálogo dinámico de imágenes en Excel.
Como ven, hemos usado extensivamente la función DESREF en sus distintas variantes (referencia a celda y referencia a rango).

En esta nota hay un enlace para descargar una animación explicatoria de la técnica para construir el modelo


Categorías: Funciones&Formulas_, Manejo de Datos_, Varios_


Technorati Tags: ,