首页 > 解决方案 > 旋转图片然后设置旋转后的属性

问题描述

我正在尝试上传图片然后旋转然后设置属性。

这会将我的图片上传到我想要的属性,但不会旋转

Sub tyh()
    ActiveSheet.Shapes.AddPicture _
      Filename:="C:\Users\dovi.dovi-PC\Desktop\ads bh\IMG-7042.jpg", _
      LinkToFile:=msoFalse, savewithdocument:=msoCTrue, _
      Left:=1200, Top:=604, Width:=350, Height:=604
End Sub

这将获取上传的图片设置属性然后旋转图片

Sub tyh()
    ActiveSheet.Shapes.AddPicture _
      Filename:="C:\Users\dovi.dovi-PC\Desktop\ads bh\IMG-7042.jpg", _
      LinkToFile:=msoFalse, savewithdocument:=msoCTrue, _
      Left:=1200, Top:=604, Width:=350, Height:=604
    ActiveSheet.Shapes(ActiveSheet.Shapes.Count).Rotation = 90
End Sub

问题是我需要先旋转图片(因为它不是正方形)然后设置属性,但无论我尝试放在哪里。

ActiveSheet.Shapes(ActiveSheet.Shapes.Count).Rotation = 90

在我得到的属性之前

错误:参数数量错误或属性分配无效

或者

语法错误

标签: excelvba

解决方案


在添加之前不能旋转图片。

所以先加吧……</p>

ActiveSheet.Shapes.AddPicture _
  Filename:="C:\Users\pcr\Pictures\IMG_20180703_150535.jpg", _
  LinkToFile:=msoFalse, savewithdocument:=msoCTrue, _
  Left:=1200, Top:=604, Width:=350, Height:=604

然后旋转它并给它所需的位置(和/或调整大小):

With ActiveSheet.Shapes(ActiveSheet.Shapes.Count)
    .Rotation = 90
    .Left = 1200
    .Top = 604
End With

推荐阅读