Cómo crear un catálogo de imágenes en Excel

8
Cómo crear un catálogo de imágenes en Excel Las personas utilizan Excel para almacenar diversos tipos de información y en muchas ocasiones dicha información necesita tener una imagen asociada por lo que se hace necesario crear un catálogo de imágenes en Excel que pueda estar vinculado a nuestra base de datos. Crear el catálogo de imágenes en Excel Existen diversos métodos para crear un catálogo de imágenes en Excel. Algunos usuarios de Excel prefieren implementar el catálogo incrustando la imagen asociada a cada registro dentro de la hoja de Excel. Sin embargo, si tienes una base de datos con muchos registros terminarás con un libro de Excel excesivamente grande por el tamaño de las imágenes lo cual dificultará su manejo. Siempre recomiendo utilizar un método con VBA porque eso nos permite dejar los archivos de las imágenes en una carpeta local del equipo y solamente cargar las imágenes conforme son utilizadas dentro de nuestra base de datos de Excel. La clave para crear el catálogo de imágenes La clave para tener un catálogo de imágenes en Excel es tener una hoja donde se relacione la “llave primaria” de nuestros registros con la imagen correspondiente. Si no estás familiarizado con el término “llave primaria” te recomiendo leer el artículoDiseño de bases de datos . En el siguiente ejemplo podrás observar que tengo una lista de 5 películas en Blu-ray y cada una de ellas tiene una clave de producto única.

Transcript of Cómo crear un catálogo de imágenes en Excel

Page 1: Cómo crear un catálogo de imágenes en Excel

Cómo crear un catálogo de imágenes en ExcelLas personas utilizan Excel para almacenar diversos tipos de información y en muchas ocasiones dicha información necesita tener una imagen asociada por lo que se hace necesario crear un catálogo de imágenes en Excel que pueda estar vinculado a nuestra base de datos.

Crear el catálogo de imágenes en Excel

Existen diversos métodos para crear un catálogo de imágenes en Excel. Algunos usuarios de Excel prefieren implementar el catálogo incrustando la imagen asociada a cada registro dentro de la hoja de Excel. Sin embargo, si tienes una base de datos con muchos registros terminarás con un libro de Excel excesivamente grande por el tamaño de las imágenes lo cual dificultará su manejo.

Siempre recomiendo utilizar un método con VBA porque eso nos permite dejar los archivos de las imágenes en una carpeta local del equipo y solamente cargar las imágenes conforme son utilizadas dentro de nuestra base de datos de Excel.

La clave para crear el catálogo de imágenes

La clave para tener un catálogo de imágenes en Excel es tener una hoja donde se relacione la “llave primaria” de nuestros registros con la imagen correspondiente. Si no estás familiarizado con el término “llave primaria” te recomiendo leer el artículoDiseño de bases de datos.

En el siguiente ejemplo podrás observar que tengo una lista de 5 películas en Blu-ray y cada una de ellas tiene una clave de producto única.

Las imágenes de cada producto estarán guardadas dentro de un directorio llamada “imagenes” y tendrán el mismo nombre que el código de producto al que pertenecen. El tener las imágenes con el mismo nombre que la clave del producto facilitará su manipulación en gran manera.

Page 2: Cómo crear un catálogo de imágenes en Excel

Insertar un Control de imagen

Para poder observar la imagen de cara producto insertaré un Control de imagen que es un tipo de control ActiveX. Para hacerlo debo ir a la ficha Programador y en el botón Insertar seleccionar el control adecuado.

El Control de imagen se verá de la siguiente manera:

Page 3: Cómo crear un catálogo de imágenes en Excel

Crear la macro para mostrar imagen

Para este ejemplo haré que la imagen se muestre al momento de seleccionar una celda de la columna Código y para ello utilizaré el evento Worksheet_SelectionChange. Haz clic derecho sobre el nombre de la hoja y selecciona la opción Ver código y dentro del Editor de Visual Basic selecciona el evento SelectionChange. A continuación podrás ver el código VBA para dicho evento:

La parte importante de este código es que cuando seleccionamos cualquier celda dentro del rango A2:A6 se modificará la propiedad Picture del objeto Image1. La instrucción LoadPicture es responsable de cargar la imagen almacenada en nuestro disco duro local:

LoadPicture(ActiveWorkbook.Path & "imagenes" & Target & ".jpg")

La instrucción ActiveWorkbook.Path devuelve el directorio actual del archivo Excel y le concatena el directorio “imagenes” que es donde se encuentran nuestros archivos. Posteriormente se concatena la variable Target que contiene el valor de la celda seleccionada y se agrega la extensión de lo archivos de imagen que para nuestro ejemplo son archivos JPG.

Probando el catálogo de imágenes en Excel

A continuación probaré que la macro recién creada funciona correctamente pata nuestro catálogo de imágenes en Excel:

Page 4: Cómo crear un catálogo de imágenes en Excel

Existen variantes sobre este método y seguramente en otro artículo tendremos la oportunidad de explorar diferentes métodos para mostrar las imágenes asociadas a un registro de nuestra base de datos en Excel.  Para continuar con las pruebas puedesdescargar el libro de trabajo utilizado junto con las imágenes de ejemplo.

Artículos relacionadosIntroducción a las macros

El Editor de Visual BasicEl Editor de Visual Basic, VBE por sus siglas en inglés, es un programa independiente a Excel pero fuertemente relacionado a él porque es el programa que nos permite escribir código VBA que estará asociado a las macros.

Existen al menos dos alternativas para abrir este editor, la primera de ellas es a través del botón Visual Basic de la ficha Programador.

El segundo método para abrir este programa es, en mi opinión, el más sencillo y rápido y que es a través del atajo de teclado: ALT + F11. El Editor de Visual Basic contiene varias ventanas y barras de herramientas.

Page 5: Cómo crear un catálogo de imágenes en Excel

En la parte izquierda se muestra el Explorador de proyectos el cual muestra el proyecto VBA creado para el libro actual y además muestra las hojas pertenecientes a ese libro de Excel. Si por alguna razón no puedes visualizar este módulo puedes habilitarlo en la opción de menú Ver y seleccionando la opción Explorador de proyectos.

Page 6: Cómo crear un catálogo de imágenes en Excel

El Explorador de proyectos también nos ayuda a crear o abrir módulos de código que se serán de gran utilidad para reutilizar todas las funciones de código VBA que vayamos escribiendo.

Dentro del Editor de Visual Basic puedes observar una ventana llamada Inmediato que está en la parte inferior. Esta ventana es de mucha ayuda al momento de escribir código VBA porque permite introducir instrucciones y observar el resultado inmediato. Además, desde el código VBA podemos imprimir mensajes hacia la ventana Inmediato con el comando Debug.Print de manera que podamos depurar nuestro código. Si no puedes observar esta ventana puedes mostrarla también desde el menú Ver.

El área más grande en blanco es donde escribiremos el código VBA. Es en esa ventana en donde escribimos y editamos las instrucciones VBA que dan forma a nuestras macros.

Es importante familiarizarnos con el Editor de Visual Basic antes de iniciar con la creación de macros.

Artículos relacionadosProgramando en VBAMostrar la ficha Programador¿Qué es una macro de Excel?