EXCEL vba 插入图片的大小裁剪尺寸移动和旋转的设置和指定
ActiveSheet.Cells(1, 1).Select ActiveSheet.Pictures.Insert( _ "D:\My Documents\My Pictures\6cf0492712220dc1f03f5b.jpg").Select With Selection.ShapeRange '裁剪 .PictureFormat.CropTop = 30 '下移裁剪 .PictureFormat.CropLeft = 30 '右移裁剪 .PictureFormat.CropBottom = 30 '上移裁剪 .PictureFormat.CropRight = 30 '左移裁剪 '裁剪 '移动旋转 通常移动距离都是和裁剪相对应的,这样图才能在指定单元格的位置。 .IncrementLeft -30 '相对图片初始位置水平移动正数向右,负数向左 .IncrementTop -30 '相对图片初始位置垂直移动正数向下,负数向上 .IncrementRotation 0 '相对图片初始位置中心旋转 '移动旋转 '大小 .LockAspectRatio = msoFalse '图片纵横比锁定为msoTrue,高度和宽度调一个值整个图就会变 .Height = 200 ' 高度 .Width = 150 '宽度 '大小 End With
ActiveSheet.Cells(3, 1).Select '选择要插入图片的单元格,定位 i = "D:\My Documents\My Pictures\111.gif" '图片地址可以写入变量 ActiveSheet.Pictures.Insert(i).Select '用变量插图片 Cells(1, 1) = Selection.Name '在第一个单元格返回插入图片对象的名称,方便以后的操作 Application.CommandBars("Picture").Visible = False '隐藏图片编辑工具 ActiveSheet.Shapes(Cells(1, 1)).Select '选择第一个单元格里所留的那个名称的图片对象 Selection.Delete '删除选择的图片对象 删除全部图片的一种方法 Dim Sh As Shape '定义一个图形的变量 For Each Sh In ActiveSheet.Shapes '遍游活动表里的所有图形组件 If Sh.Name Like "Picture *" Then '如果图形对象的名称里有“Picture *”通配的往下执行,因为图片对象默认对象名称是Picture 数字 Sh.Select '选择图片名称的对象 Selection.Delete '删除图片对象 End If Next Sh '利用循环就把图片对象都给删除了。