Я новичок в VBA, и я надеюсь, что смогу щелкнуть изображение в Excel и развернуть его, а затем сжать при повторном нажатии. Тем не менее, я хочу, чтобы изображение уменьшалось до высоты / ширины ячейки, в которой оно находится. В настоящее время я нашел этот код, который работает, хотя он не будет уменьшаться до высоты / ширины ячейки. Заранее спасибо за любую помощь
Sub Picture2_Click()
Dim shp As Shape
Dim big As Single, small As Single
Dim shpDouH As Double, shpDouOriH As Double
big = 5
small = 1
On Error Resume Next
Set shp = ActiveSheet.Shapes(Application.Caller)
With shp
shpDouH = .Height
.ScaleHeight 1, msoTrue, msoScaleFromTopLeft
shpDouOriH = .Height
If Round(shpDouH / shpDouOriH, 2) = big Then
.ScaleHeight small, msoTrue, msoScaleFromTopLeft
.ScaleWidth small, msoTrue, msoScaleFromTopLeft
.ZOrder msoSendToBack
Else
.ScaleHeight big, msoTrue, msoScaleFromTopLeft
.ScaleWidth big, msoTrue, msoScaleFromTopLeft
.ZOrder msoBringToFront
End If
End With
End Sub