打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
使用VBA复制、插入、移动、删除和控制图片2
userphoto

2023.05.13 四川

关注

excelperfect

标签:VBA
前一篇:使用VBA复制、插入、移动、删除和控制图片1
情形6:遍历工作表中所有图片
下面的代码遍历当前工作表中所有图片。
Sub LoopThroughImages() Dim shp As Shape Dim ws As Worksheet Set ws = ActiveSheet For Each shp In ws.Shapes If shp.Type = msoPicture Then MsgBox shp.Name & '是一幅图片' End If Next shpEnd Sub
情形7:验证所选对象是否是图片
下面的代码验证指定对象是否为图片。
Sub CheckIfPicture() Dim obj As Object Set obj = Selection  If TypeName(obj) = 'Picture' Then   MsgBox '所选的是图片' Else   MsgBox '所选的不是图片' End IfEnd Sub
情形8:链接图片
图片能够被链接到单元格或者命名区域,这样可以使图片是动态的,当单元格中的内容变化时图片也随之变化。
Sub MakeImageLinkedPicture() Dim ws As Worksheet Set ws = ActiveSheet ws.Pictures('Picture 6').Formula = '=C2:E9'End Sub
情形9:图片放置和锁定
可以使用放置选项控制图片行为。
Sub ImagePlacementAndLocking() Dim myImage As Shape Dim ws As Worksheet  Set ws = ActiveSheet Set myImage = ws.Shapes('Picture 6')  '图片放置选项 myImage.Placement = xlFreeFloating  '锁定图片(在工作表保护时阻止编辑) myImage.Locked = TrueEnd Sub
情形10:旋转图片
下面的代码旋转图片指定数。
Sub RotateImageIncremental() Dim myImage As Shape Dim rotationValue As Integer  Set myImage = ActiveSheet.Shapes('Picture 6') rotationValue = 45 myImage.IncrementRotation (rotationValue)End Sub
或者:
Sub RotateImageAbsolute() Dim myImage As Shape Dim rotationValue As Integer  Set myImage = ActiveSheet.Shapes('Picture 6') rotationValue = 120  myImage.Rotation = rotationValueEnd Sub
未完待续......

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
工作表(Worksheet)基本操作应用示例 >> VBA基础 >> Excel吧
Excel259个常用宏
Worksheet对象应用大全(2)-应用进阶
教程 | 这些Excel vba源码,值得收藏(二)
数据透视表系列讲座9/15---打印
VBA|使用工作表对象Worksheet操作和管理工作表
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服