Saltar al contenido

Insertar comentario a imagen


jechu85

Recommended Posts

publicado

Hola, aquí estoy de nuevo, necesito de vuestra grandiosa ayuda. Resulta que tengo una hoja excel con varias imágenes insertadas y me gustaría poder ponerle un comentario a esas imágenes, buscando y buscando solo he visto como insertar una imagen a un comentario de una celda pero nada de un comentario a una imagen. ¿se puede hacer con una macro?

Un saludo

Invitado Cacho R
publicado

Si te encuentras utilizando un control activex como receptáculo de la imagen, entonces podrías aprovechar el evento MouseMove del control para desplegar el comentario.

En el Foro encontrarás ejemplos de ello.

publicado

Hola,

por favor, asigna esta macro a cada una de las imágenes a las que les quieres agregar un comentario (botón derecho del ratón sobre la imagen, seleccionas "Asignar macro" y seleccionas "Comentar" de la lista de macros disponibles). Luego basta con hacer click sobre la imagen para activar el comentario (o para ocultarlo una vez lo hayas creado).

Ten en cuenta que la macro inserta una nueva autoforma como comentario, por lo que puedes jugar con el formato, la ubicación, etc.

Public Sub comentar()


On Error GoTo errSection

Dim comentarioCaller As Excel.Shape ' La forma que llama a esta macro
Dim comentario As Excel.Shape ' La forma que contiene el comentario
Dim ws As Excel.Worksheet ' La hoja desde la que se llama a esta macro
Dim nombreFormaComentario As String ' Nombre de la forma que contiene el comentario


' cuando se activa la macro, se intenta cargar la forma con el
' comentario (de nombre nombreFormatoComentario) en la variable
' Comentario, si aún no existe la forma con el nombre
' nombreFormaComentario se produce este error
Const ERR_NO_SE_ENCONTRO_OBJETO = -2147024809

' Application.Caller es de tipo String si es llamada
' desde una forma, conteniendo el nombre de la forma
' que llama a la macro. Sólo en ese caso se continua.
If TypeName(Application.Caller) = "String" Then

' nombre único para la forma que va a contener el
' comentario de la forma que llama la macro, consta
' del nombre de la forma que llama al comentario
' y del sufijo "_comment"
nombreFormaComentario = Application.Caller & "_comment"

Set ws = ActiveSheet
Set comentarioCaller = ws.Shapes(Application.Caller)

' se intenta cargar la forma con el comentario para
' la forma que llama la macro. Si no existe se produce
' un error y el objeto comentario queda vacio.
Set comentario = ws.Shapes(nombreFormaComentario)


' Si no existe aún un comentario para esta forma
' se crea uno, de lo contrario se alterna entre
' hacer visible - invisible el comentario existente
If comentario Is Nothing Then

' no existe el comentario para la forma desde que se llamo la macro,
' por lo que se crea uno
Set comentario = ws.Shapes.AddTextbox(Orientation:=msoTextOrientationHorizontal, _
Left:=comentarioCaller.Left, _
Top:=comentarioCaller.Top, _
Width:=150, _
Height:=20)

' determina las propiedades iniciales del comentario y lo
' selecciona para que el usuario lo modifique a su gusto
With comentario
.Name = nombreFormaComentario
.TextFrame.Characters.Text = "<comentario>"
.Select
End With

Else

' ya existe el comentario, por lo que se alterna
' su propiedad visible cada vez que se llama la
' macro desde la forma
comentario.Visible = Not comentario.Visible

End If

End If


exitSection: On Error GoTo 0
Set ws = Nothing
Set comentario = Nothing
Set comentarioCaller = Nothing
Exit Sub

errSection:

Select Case ERR.Number
Case ERR_NO_SE_ENCONTRO_OBJETO
Resume Next
Case Else
MsgBox prompt:="Error " & ERR.Number & ": " & ERR.Description, _
Buttons:=vbCritical
Resume exitSection
End Select

End Sub[/CODE]

publicado

Saludos y feliz Navidad:

Subo un ejemplo basado en la idea de Cacho, se trata de usar controles ActiveX.

Un control Image dentro de un control Label.

Los comentarios de cada imagen, cuyo número es indistinto (1,2,3....n) pueden realizarse con cualquier tipo de autoforma con la única condición que el nombre de la autoforma empiece por "Comentario" seguido del nombre del control Image.

El funcionamiento es simple, al pasar por encima del control Image se visualizarán los comentarios y al pasar por encima del control Label, se ocultarán.

Con esta base y un poco de imaginación, se pueden hacer composiciones realmente curiosas.

Be happy

Imágenes y comentarios.rar

publicado

Hola, muchísimas gracias por todas las repuestas, al final me he servido de la de macro antonio. tema solucionado

un saludo, feliz navidad y año nuevo

- - - - - Mensaje combinado - - - - -

hola, se me habia olvidado preguntar una cosilla, en la opcion de macro antonio, he puesto en una misma hoja, 8 imagenes con sus correpondientes comentarios, lo unico que no consigo es que cuando aparezca un comentario oculte el resto, para que no se solapen.Dejo archivo de lo que he conseguido hacer.

https://www.dropbox.com/s/0mdkpq1ljpvvk9z/Libro1.xlsm?m

un saludo

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.