6 febrero, 2025

INSERTAR FOTOGRAFÍA EN CONTROL DE IMAGEN

A diario recibo bastantes consultas directamente al buzón de contacto de Excel Signum, hace unos días, un lector realizaba una consulta para resolver una situación problemática de una idea que quería realizar.

Se proponía realizar su currículum en Excel, algo que le pareció interesante, sobre todo por la versatilidad para mostrar información, ya que podría incluir cronogramas, gráficos, diseños, cálculos, porcentajes (incluso vídeos).

Dado que aún estaba comenzando, tenía la duda de cómo realizar una macro para poder insertar su fotografía, y además modificar tamaños y formatos.

Normalmente las imágenes se suelen insertar en los formularios para realizar programas, como por ejemplo, de almacén, donde la fotografía del artículo acompaña a la descripción del mismo. Además la imagen se suele almacenar en una carpeta o directorio desde el cual cuando el formulario se abra cargue la foto, de otra forma, si almacenásemos cientos imágenes en un archivo, pesaría demasiado y su gestión sería inviable.

Pero para este caso, lo que se busca es insertar una fotografía en la propia hoja Excel (que la almacene) y que además cada vez que elija una nueva, elimine la anterior.

Para ello, antes de nada, debemos insertar en nuestra hoja un control ActiveX (imagen).

INSERTAR FOTOGRAFÍA EN HOJA EXCEL EN UN CONTROL DE IMAGEN

Una vez realizado esto, procedemos a introducir en nuestro editor de VBA el siguiente código en un módulo estándar:

Sub INSERTA_FOTO()
Dim foto As Variant
'Abrimos directorio y buscamos solo archivos de imagen
foto = Application.GetOpenFilename(FileFilter:= _
"Imagen (*.gif;*.jpg;*.jpeg;*.bmp), *.gif;*.jpg;*.jpeg;*.bmp", _
Title:="Seleccionar imagen", MultiSelect:=False)
'si no elegimos ninguna fotografía entonces salimos del proceso
If foto = False Then
Exit Sub
End If
'Si elegimos la foto pero antes ya teníamos otra, antes de insertar, borramos la anterior
With Sheets(1)
If Not IsEmpty(.Image1.Picture) Then
.Image1.Picture = Nothing
End If
'luego subimos la foto.
.Image1.Picture = LoadPicture(foto)
' y le damos formato, en este caso Strech (justificamos la imagen)
.Image1.PictureSizeMode = fmPictureSizeModeStretch
' si deseamos dar formato al ancho y al alto, lo podemos hacer asi
.Image1.Width = 120
.Image1.Height = 120
End With
End Sub

Ahora que ya lo tenemos, podemos elegir entre nuestros archivos la imagen que nos interesa y además darle formato.

Con esta propiedad estamos ajustando la imagen al control ActiveX:

.Image1.PictureSizeMode = fmPictureSizeModeStretch

Pero también podemos subir la imagen sin ajustar:

.Image1.PictureSizeMode = fmPictureSizeModeClip

O realizando un zoom del 50%, por ejemplo:

.Image1.PictureSizeMode = fmPictureSizeModeZoom = 50

Y eso es todo, ahora nuestro compañero ya tiene la herramienta perfecta para seleccionar y subir su fotografía en su futuro currículum.

El resultado sería un pequeño formulario para subir nuestra imagen, (en este caso os dejo una vista panorámica desde el Duomo, en Florencia. Qué gran viaje 🙂

INSERTAR FOTOGRAFÍA EN HOJA EXCEL EN UN CONTROL DE IMAGEN1

Aunque considero que no es necesario, si queréis incluir un botón para eliminar la foto, el código sería este:

Sub ELIMINA_FOTO()
'Formulario en blanco
With Sheets(1)
.Image1.Picture = Nothing
End With
End Sub

Y este sería el pequeño ejercicio de hoy, espero que os resulte de interés y os pueda servir en alguno de vuestros proyectos, o currículums 🙂

* Nota: los formatos de imagen «png» y «tiff» no son soportados por VBA, por ello no los incluyo en el ejemplo. Existen algunos desarrollos con el API de Microsoft para poder subir archivos png, pero eso ya lo trataré en otro post.

Descarga el archivo de ejemplo pulsando en: INSERTAR FOTOGRAFÍA EN HOJA EXCEL EN UN CONTROL DE IMAGEN

 

Comparte este post

71 comentarios en «INSERTAR FOTOGRAFÍA EN CONTROL DE IMAGEN»

  1. Hola, me funciona todo correctamente excepto al cargar imágenes .png que no me deja insertarlas. Alguna idea para solucionarlo? Gracias

  2. Hola José, es cierto. Por error he incluido en la programación archivos Png y Tiff, copiar y pegar … ( en breve modifico la entrada ). Este problema se debe a que en VBA el control load picture no soporta estos formatos. Solo se puede solucionar con el API de Microsoft y programación adicional. Las imágenes permitidas serían el resto. Gracias por avisar!!!

  3. Hola, he estado tratando de hacer algo similar pero no encuentro nada relacionado, tengo una macro que inserta fotografías en un controlador de imágenes (Image1) en la «hoja1» de un directorio establecido y que lo único que cambia es el nombre del archivo, que se encuentra dentro de la «hoja1» en la celda «M1» (que llame [xCODIGO]), al ejecutar la macro desde la «hoja1» funciona perfectamente, incluso si cambio el valor de la celda M1 me inserta la imagen correcta, posteriormente cree otra hoja llamada «hoja2» con un valor distinto en la celda M1, quisiera ejecutar la macro en ambas hojas a la vez, y que me insertara la imagen que corresponde a cada hoja. en todas las hojas tengo el controlador de imagen llamado Image1 y el valor (nombre del archivo) se encuentra en la celda M1, quiero ejecutar la macro y que inserte las imágenes de acuerdo a su nombre (Celda M1). esta es la instrucción que uso, cuando la ejecuto desde la hoja activa funciona perfectamente, quisiera esa misma instrucción pero que se ejecutara en todo el libro, que me insertara la imagen que corresponda a la celda M1 ([xCODIGO]), ¿alguna idea?

    ActiveSheet.Image1.Picture = LoadPicture(ActiveWorkbook.Path & «\imágenes\» & «\Croquis\» & [xCODIGO].Text & «.jpg»)

    Gracias

    1. Hola Gabriel,

      Supongo que tienes el código en el modulo de la hoja. Para hacer que funcione en todo el libro debes utilizar el módulo «ThisWorkbook»
      y ahí debes escribir la siguiente macro:

      Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
      ActiveSheet.Image1.Picture = LoadPicture(ActiveWorkbook.Path & “ \ imágenes \ ” & “ \ Croquis \ ” & [xCODIGO].Text & “.jpg”)
      End Sub

      Suponiendo que el evento que active la macro sea un cambio en la celda.

      Espero haberte ayudado.

        1. De casualidad sabe, ¿como puedo comprimir una imagen que esta dentro de un controlador de imagen? inserte las imágenes como lo mencione anteriormente, sólo que las dimensiones del controlador de imagen son algo grandes y el archivo cuando tiene bastantes imágenes se vuelve pesado y difícil de trabajar.

          Muchas gracias

          1. Hola Gabriel,

            Lo mejor para estos casos es que realices la compresión de la imagen antes de subirla a Excel. De todas formas, si ya las tienes subidas e incrustadas en la hoja, con este proceso puedes cambiarlas todas al mismo tamaño: Esta macro cambia el tamaños de todas las imágenes de la primera hoja del archivo.

            Sub tamaño()
            Dim Shape As Excel.Shape
            i = 1
            For Each Shape In Sheets(1).Shapes
            With Sheets(1).Shapes(i)
            .Height = 50 'Alto
            .Width = 180 'Ancho
            End With
            i = i + 1
            Next
            End Sub

            Saludos.

          2. Muy amable por responder, lo que realice fue comprimir las imágenes antes de subirlas, pero, como el archivo lo utilizaremos varios, ¿existe una manera de «condicionar» que cuando se inserte una imagen mediante una macro esta se comprima? el tamaño ya lo ajusto, pero ¿que se comprima y las baje a calidad WEB 150 PPP? Muchas gracias

          3. Hola Gabriel,

            Puedes incluir esto en la macro, si la imagen excede los 150 píxeles, se mostrará el mensaje y la macro finalizará.
            Declara esta variable:
            Dim vSize As Integer

            y coloca este código justo después de» .Image1.Picture = LoadPicture(foto)»

            vSize = .Image1.Picture.Width
            If vSize > 3969 Then
            MsgBox ("EL TAMAÑO DE LA IMAGEN EXCEDE LOS 150 PPP, POR FAVOR REDUCE EL TAMAÑO")
            Exit Sub
            End If

            Saludos.

    1. Hola Marco,

      Exactamente, de qué forma quieres subir las imágenes?, seleccionándolas previamente una a una, mediante un bucle? Dónde las vas a cargar?

      Es necesario tener más información para poder responderte.

      Saludos.

    1. Hola Kevin:

      No he implementado todavía nada sobre esto. Sin embargo en internet existen algunas soluciones, por ejemplo esta que está en el foro stackoverflow

      https://stackoverflow.com/questions/23672244/loadimage-png-in-excel-vba-form-image1-picture-control-black-background

      Está en inglés y requiere además que te descargues un módulo aparte en la red (desarrollado para este tipo de imágenes).

      Espero te puede servir.

      Otra opción es pasar los formatos PNG o TIF a formatos admitidos en el control de imagen.

      Saludos.

  4. Quisiera saber como lo puedo hacer para cuando, en el directorio «imágenes», no encuentre la imagen y no deje pegada la anterior. si no que deje el control de imagen en blanco.

    1. Hola Sergio: Si te he entendido bien, quieres que cuanto NO se seleccione nada, el control quede vacío y no conserve la imagen anterior.

      Para hacer esto, incluye esta línea en esta parte de la macro: Sheets(1).Image1.Picture = Nothing

      Así:

      If foto = False Then
      Sheets(1).Image1.Picture = Nothing
      Exit Sub
      End If

      Saludos.

      1. Hola
        Excelentes ideas..!
        Me sirvieron para una cuestión de asistencias del personal que tengo en la Oficina.
        Una duda: Que el control, quede vacío cuando no hay imagen está bien… Pero no indica nada.
        Para un servidor sería mejor poner un aviso que diga por ejemplo: No hay imagen para este Item. O algo por el estilo.
        Me pueden ayudar a hacerlo con un mensaje en el control o en la celda donde esta ubicado el Control..?
        Muchas gracias…!

        1. Hola Francisco:

          No es posible realizar lo que solicitas. El problema es que estamos tratando con un control ActiveX y no es posible escribir sobre él, solo podemos incluir una imagen, cambiar el color y poco más. No se refiere a una celda, es un objeto.

          Podrías utilizar un msgbox y cada vez que ejecutes la macro, se muestre un mensaje indicando que el control está vacío, tipo:

          If foto = False Then
          Sheets(1).Image1.Picture = Nothing
          Msgbox(«No existe imagen»)
          Exit Sub
          End If

          Saludos.

  5. Hola:
    Ante todo, agradecer su esfuerzo en ayudar a resolver nuestras dudas de esta gran aplicación que es Excel.
    Siguiendo este hilo, ¿podría capturar una foto tomada desde la cámara integrada o una webcam externa, desde Excel con VBA?. He buscado por Internet, pero es información antigua y creo que no funciona por las características de mi software (Windows 10, 64 bits y Office 365).
    Agradeciendo de antemano su interés , cordiales saludos.

    1. Muchas gracias Carlos:

      Pues no tengo ninguna aplicación relacionada con capturar la imagen de una web cam. Déjame que lo investigue y te contesto tan pronto como pueda.
      Saludos y gracias por comentar.

  6. hola, ¿qué tal? de nuevo por aquí a molestarte un poco, de casualidad tienes un post en el que expliques como hacer esta tarea «Normalmente las imágenes se suelen insertar en los formularios para realizar programas, como por ejemplo, de almacén, donde la fotografía del artículo acompaña a la descripción del mismo. Además la imagen se suele almacenar en una carpeta o directorio desde el cual cuando el formulario se abra cargue la foto, de otra forma, si almacenásemos cientos imágenes en un archivo, pesaría demasiado y su gestión sería inviable.» Ando tratando de programar los reportes que te comenté en el post de combinar correspondencia, pero me ha quedado un poco grande lograrlo, de antemano gracias. Feliz día.

      1. muchas gracias, después de tres días de trabajo lo conseguí, la macro hace lo que busco, la enviaré a tu correo por si puede ser de ayuda en algo (aunque lo dudo) jeje, lindo día

  7. Buen dia, quisiera que me resolvieras una duda, la carga de imagenes desde la pc no tengo ningun problema funciona todo, el problema o duda es que las imagenes se almacenan desde cualquier lugar al picturebox y este almacena una direccion en la celda asignada. Lo que quiero es que al cargar esa imagen y guardar «este guardar me cambie la extension de esa imagen y me copie esa imagen a otra carpeta que este en mi proyecto» para que a la hora de realizar consultas no importa la maquina donde se encuentre siempre me dara las imagenes sin perder la ruta del proyecto.
    De antemano gracias

  8. Hola buen día, me gustaría saber de qué forma puedo duplicar o reflejar la imagen del Imane1 a otro control Image2 en una hoja diferente, ya me funciona cargar la imagen pero me gustaría que se viera también en la hoja 3 que es donde finalmente imprimiré el formulario. Te agradezco de antemano.

    1. Hola Mauro:

      Tendrías que insertar el mismo control en la hoja 3 y luego modifica el código para que suba la imagen en las dos hojas al mismo tiempo, así:

      Sub INSERTA_FOTO()
      Dim foto As Variant
      ‘Abrimos directorio y buscamos solo archivos de imagen
      foto = Application.GetOpenFilename(FileFilter:= _
      «Imagen (*.gif;*.jpg;*.jpeg;*.bmp), *.gif;*.jpg;*.jpeg;*.bmp», _
      Title:=»Seleccionar imagen», MultiSelect:=False)
      ‘si no elegimos ninguna fotografía entonces salimos del proceso
      If foto = False Then
      Exit Sub
      End If
      ‘Si elegimos la foto pero antes ya teníamos otra, antes de insertar, borramos la anterior
      With Sheets(1)
      If Not IsEmpty(.Image1.Picture) Then
      .Image1.Picture = Nothing
      End If
      ‘luego subimos la foto.
      .Image1.Picture = LoadPicture(foto)
      Sheets(3).Image1.Picture = LoadPicture(foto)
      ‘ y le damos formato, en este caso Strech (justificamos la imagen)
      .Image1.PictureSizeMode = fmPictureSizeModeStretch
      Sheets(3).Image1.PictureSizeMode = fmPictureSizeModeStretch
      ‘ si deseamos dar formato al ancho y al alto, lo podemos hacer asi
      .Image1.Width = 120
      .Image1.Height = 120
      Sheets(3).Image1.Width = 120
      Sheets(3).Image1.Height = 120
      End With
      End Sub

      Saludos.

  9. Buenos días,

    Estoy intentando acoplar esta macro a una hoja de control de ensayos que realizamos en mi empresa. Necesitan incorporar unas imágenes que sacan y guardan en el ordenador y luego de forma manual la introducen en el archivo de control, y quiero añadirles esta herramienta para facilitarles la labor de incluir dichas imágenes.
    El problema aparece cuando incluyo la macro en mi hoja de control, al ejecutarla me aparece un error que dice: «Se ha producido el error ‘438’ en tiempo de ejecución: El objeto no admite esta propiedad o método.»
    He probado la macro en una hoja en blanco de Excel y funciona correctamente, en cambio, en la que estoy trabajando no funciona ¿A que puede ser debido? Espero que puedas ayudarme.

    Un saludo y gracias,
    Erik

    1. Hola Erik:

      Tendría que ver la hoja en la que estás utilizando la macro. Debería funcionar correctamente. haz una copia del archivo y borra el contenido y envíame la hoja para verificar por qué te muestra ese error.

      Saludos.

      1. Muy buenas. Ya he conseguido que funcione la macro en mi hoja, el error básicamente estaba en la definición de la hoja a la que aplicaba la macro. Al ser una hoja con varias pestañas, era necesario definir a que hoja debía aplicarse, ya que, no quiero que esta influya en todo el archivo. Vamos, que una tontería.

        Un saludo y muchas gracias,
        Erik

  10. De antemano muchas gracias, me ha servido mucho su ayuda en otro temas de macros, en verdad gracias a esta comunidad, aclaro soy nuevo en macros. Tengo una duda con respecto a las imágenes, bueno muchas, pero por lo pronto es una; tengo una Macro de un archivo de excel hecho en Mac con versión Excel 2011 y al trabajar en versión de 64 bits el código no funciona, es decir tu código o ejemplo trabaja bien en una PC con Windows 10 de 64 bits, pero al adaptarlo al archivo original que es un .xlsm que fue creado en Mac excel 2011 emite error de «No se ha definido Sub o Function» y hace referencia a LoadPicture … ¿Tiene solución?

    1. Hola Fabian:

      Yo solo programo en entorno windows. En Mac no realizo desarrollos. Es posible que ese error surja porque no se encuentra en la biblioteca de Excel para mac.

      Saludos.

  11. Buenos días, Podría ayudarme a insrtar la imagen mediant el control de imagen y que posteriormente quede en una celda especifica?

    Desde ya, muchas gracias!

    1. Hola Pedro, eso lo puedes hace empleando este comando:

      .Image1.Top = Sheets(1).Cells(1, 2).Top
      .Image1.left = Sheets(1).Cells(1, 2).left
      En este ejemplo pasas la imagen a la celda «A2».

      En concreto en la macro en la parte:

      .Image1.Width = 120
      .Image1.Height = 120
      .Image1.Top = Sheets(1).Cells(1, 2).Top
      .Image1.left = Sheets(1).Cells(1, 2).left
      Saludos

  12. Buenas Tardes tengo una duda, como le puedo hacer para al ejecutar una macro que inserte imagenes en determinadas celdas. Por ejemplo que al ejecutar la macro me inserte una imagen en la celda A12, B17, D19, E12, F12, G32, H12, H55, J12. Agradeciaria mucho su Ayuda.

  13. buenas tardes, gracias por el post, cuando asigno un botón a la imagen sale bien, pero si pongo un segundo botón para otra imagen, si hago click en el segundo botón, se cambia la imagen del 1 botón y no sale nada en la imagen del segundo boton, Como podría hacer para colocar una imagen en cada botón, y poder poner los botones que me sean necesarios

  14. Hola Francisco:

    Para hacer eso debes copiar el código de nuevo y crear una nueva macro asociada al control de imagen.

    Como el control de imagen será 2, debes cambia en el código .Image1.Picture por .Image2.Picture

    Saludos.

  15. Hola buen día, es posible reducir esta operación sin necesidad de copiar y cambiar el numero por cada control de imagen
    Saludos

    1. Hola, sí es posible.

      Habría que incluir una variable para identificar el control de imagen en el botón de comando para onluir la imagen seleccionada. En estos momentos no dispongo de tiempo para realizar esa programación, pero podrías intentarlo de esa manera, o copiar la rutina como contesté a la pregunta anterior.

      Saludos

      1. Hola que tal me gusto mucho tu programación y lo estoy usando solo que también requiero eso de la variable ya que yo lo uso con el logo de la empresa y hago etiquetas de almacen y me gustaria saber como hacer que todod los controles de imagen cambien de imagen cada que la cambio trate de programar la variable y meter un do while o un if para que lo haga pero no me cambia las imagenes y tengo el formato de 50 etiquetas espero me apoyes con esto saludos

        1. No sería un do while sería un for each, es decir por cada imagen (que sería una variable), haz determinado evento. Esa sería la secuencia a utilizar y programar.

          Saludos.

  16. Hola

    Realice paso a paso, pero al insertar la imagen me aparece el error 438; sabes por que?

    En el visual basic ingrese lo siguiente:

    Sub INSERTA_FOTO_Click()
    Dim foto As Variant
    foto = Application.GetOpenFilename(FileFilter:=»Imagen (*.gif;*.jpg;*.jpeg;*.bmp), *.gif;*.jpg;*.jpeg;*.bmp», Title:=»Seleccionar imagen», MultiSelect:=False)
    If foto = False Then
    Exit Sub
    End If
    With Sheets(1)
    If Not IsEmpty(.Image1.Picture) Then
    .Image1.Picture = Nothing
    End If
    .Image1.Picture = LoadPicture(foto)
    End With
    End Sub

    1. Hola Fernanda: eso es porque has usado o bien el formato PNG o el GIF. al final del post ya lo advierto:

      «los formatos de imagen “png” y “tiff” no son soportados por VBA, por ello no los incluyo en el ejemplo»

      Saludos.

  17. Hola buena tarde, excelente ejemplo, lo estoy utilizando en un formulario y me marca el siguiente error: Object doesn´t support this property or method, y me marca «If Not IsEmpty(.Image1.Picture) Then»; ya revise incluso incluso el nombre del objeto Image1 y al parecer todo esta bien, aque se debe?

    1. Hola Andrus:

      Entiendo que no estás usando archivos PNG ni GIFF, que no se deben utilizar con este método. Por otra parte, si lees los comentarios, en el caso de Erik, que obtiene tu mismo error, el problema era la hoja a la que se hacía referencia en la macro, ese debe ser el problema. Revisa la hoja de referencia. Saludos.

  18. Hola Buenos días, tengo una duda, se puede vincular un control de imagen de un formulario de Macros con una imagen de una celda, en el mismo Excel, sin tener que utilizar carpetas externas, gracias de antemano

  19. Hola Sergio:

    Desconozco que se pueda realizar. Por otra parte, una imagen embebida o insertada en una hoja, es una objeto, no se puede vincular al contenido de una celda.

    El método LoadPicture espera una cadena de conexión con el archivo (imagen), no con una hoja.

    Siento no poder ayudarte.

    Saludos.

  20. Buenas tardes Ingeniero Segu
    Me ha parecido muy interesante su aportación.

    Yo soy Contadora y por necesidad me he ido empapando poco a poco de la macros, actualmente me es de utilidad su macro para muchos fines, pero me topé con un error que no se como corregir por mi inexpericencia en la programacion.

    He querido copiar el codigo para tener opcion de seleccionar 3 imagenes en una misma hoja de excel, cambíe el nombre como lo indico en preguntas anteriores de imagen 1 a imagen2, pero me marca error de nombre ambiguo en la tercer imagen. Me podría indicar como corregirlo?
    Necesito insertar 3 imagenes diferentes en la misma hoja, por favor!!

    1. Hola CP Silvia:

      No entiendo cuál es el problema. Si copias el código tres veces, y modificas el 1 por el 2 y el 3 en .Image1.Picture

      Y crear varios controles de formularios tres con su textbox cada uno debería funcionar perfectamente.

      Saludos.

  21. Buenas tardes tengo un proyecto para control vehícular y requiero ingresar alguna foto al formulario inicial desde la cámara ya que quiero utilizar una tableta para llevar acabo todos los registros.

    1. Hola Aron: Esta macro únicamente sirve para cargar en el formulario imágenes que tengas en el equipo o en un ruta establecida, no se contempla capturar datos desde una cámara. Saludos

      1. Buenas tardes, entiendo lo que me dices… mi pregunta más bien sería hay una macros que aga lo que nesesito esto de ingresar una foto desde la cámara??? Y si la hay me puedes ayudar en eso..?te lo agradecería..
        Saludos.

  22. Buenos días, quisiera solucionar un pequeño inconveniente si podría ayudarme.
    El controlador de imagen gira mi foto hacia la izquierda, ya probé girando la foto desde la ruta correspondiente e igual sigue posicionando la imagen hacia la izquierda por mas que cambie la imagen original. Ya intenté desde «Formato de control» y tengo desabilitado el giro, también intenté desde propiedades. Quisiera saber si hay alguna solución desde VBA o una mas simple. Le dejo el código para que vea la función que cumple en mi formulario.
    (Todas la imágenes están en formato «.jpg»)

    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    On Error Resume Next
    [nFila] = Target.Row
    Image1.Picture = LoadPicture(ActiveWorkbook.Path & «/imagenes/» & [xCod].Text & «.jpg»)
    End Sub

  23. genial la macro… pero me gustaria cargar dos imagenes en una misama hoja de excel y parece que se bloquea en el momento de cargar las imagenes, en cualquiera de los dos controles de imagen… debe haber algun cruce de nombres…
    Gracias

    1. Hola de nuevo.
      Yo lo que quiero es que una foto que esta en el objeto image, gire 90º, pero que no haga espejo. Mi problema es que este objeto(ActiveX) tiene deshabilitada la opción de girar.
      Espero haberme explicado bien.
      Gracias

Si te ha gustado o tienes alguna duda, puedes dejar aquí tu comentario.

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies

ACEPTAR
Aviso de cookies