La deformación de imágenes con el código VB sigue
Saludos de nuevo DAM
He cambiado el tamaño de las imágenes al tamaño EXACTO que van a ocupar en el Excel en la hoja 'Disciplinas'. Es decir, del W10 al Y16, lo que hace un total de 121 píxeles de ancho y 113 de alto. He hecho una captura con Photoshop para medir el tamaño exacto y así lo he hecho. Ninguna imagen se suponer a otra y quedan perfectamente encuadradas, pero cuando se usa el VB se descuadran y aparecen casi el doble de grandes de tamaño. ¿Por qué ocurre esto?
Te envío a tu correo las imágenes y el archivo para que lo compruebes si es necesario. Tienen el tamaño perfecto para encajar en la zona gris, es exactamente ese, pero no funciona
Private Sub Worksheet_Calculate() 'Por.DAM On Error Resume Next Me.Shapes("imagen1").Delete Me.Shapes("imagen2").Delete Me.Shapes("imagen3").Delete If Range("V24") <> "" Then poner "V24", "W10:Y16", "imagen1" End If If Range("V40") <> "" Then poner "V40", "AB10:AD16", "imagen2" End If If Range("V56") <> "" Then poner "V56", "AG10:AI16", "imagen3" End If End Sub Sub poner(r1, r2, r3) 'Por.DAM Application.ScreenUpdating = False imagen = Range(r1) & ".png" ruta = ActiveWorkbook.Path & "\disciplinas\" & imagen Set clan = Me.Pictures.Insert(ruta) With Range(r2) Arriba = .Top Izquierda = .Left Ancho = .Offset(0, .Columns.Count).Left - .Left Alto = .Offset(.Rows.Count, 0).Top - .Top End With With clan .Name = r3 .Top = Arriba .Left = Izquierda .Width = Ancho .Height = Alto End With Set clan = Nothing Application.ScreenUpdating = True End Sub
1 Respuesta
Respuesta de Dante Amor
1