Start » VBA-Ejemplos » Scrollrow – Imagen fija a un costado de la pantalla

Scrollrow – Imagen fija a un costado de la pantalla

Si queremos que el usuario vea una imagen en el costado superior izquierdo de la pantalla, esté donde esté en la hoja, podemos aplicar el siguiente código.

Trata de utilizar la propiedad SCROLLROW, que nos da la celda superior izquierdo de la pantalla visible. Y SCROLLCOLUMN de la columna por supuesto. Luego insertamos un comentario, en la cual ponemos una imagen y un poco de texto.

El resultado será algo como

imagenfija

El código

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim strRuta As String
Dim intRowActual as Double, intColumnActual As Double
Dim intRow as Double, intColumn As Double

'ruta a imagen
strRuta = "C:\imagen.jpg"

'fila/columna actual
intRowActual = ActiveCell.Row
intColumnActual = ActiveCell.Column

'fila/columna de scrollRow
intRow = ActiveWindow.ScrollRow + 1
intColumn = ActiveWindow.ScrollColumn

'insertamos comentario
Cells.ClearComments
With Cells(intRow, intColumn)
.AddComment
.Comment.Text Text:="Hola"
.Comment.Visible = True
End With

'añadimos imagen al comentario
Cells(intRow, intColumn).Comment.Shape.Select True
Selection.ShapeRange.Fill.UserPicture strRuta

'aparcamos en celda actual
Cells(intRowActual, intColumnActual).Select

End Sub