VBA 动态显示图片,求代码注释!!

来源:百度知道 编辑:UC知道 时间:2024/05/29 17:06:46
因工作需要,在网上下载了一段可以动态显示图片的vba代码,但是其中有几句不能理解,希望高手指点!!

Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False '在文档保存前禁止执行BeforeSave 事件
On Error Resume Next '如果程序运行中出现了错误的话 程序继续执行下去

Shapes.SelectAll
Selection.ShapeRange.Delete
Range("A2").Select
Range("A2").RowHeight = 60 '定义A2的行高,磅数。
Range("A2").ColumnWidth = 12 '定义A2的列宽,标准字符数。
Shapes.AddShape(msoShapeRectangle, 0, 24, 72, 60).Select '定义图片框的左上角位置和宽度、高度。
Selection.ShapeRange.Fill.Visible = msoFalse
Selection.ShapeRange.Shadow.Obscured = msoTrue
Selection.ShapeRange.Shadow.Type = msoShadow18
Selection.ShapeRange.Fill.UserPicture "d:\" & Range("A1").Value & ".jpg"
Range("A1").Select
Application.EnableEvents = True
End Sub
除了倒数第2,3以外,没有注释的语句都是我不能理解的,到网上搜索了一下还是没有满意的答案,惭愧啊!!

Shapes.SelectAll 选中所有图片
Selection.ShapeRange.Delete 删除
Selection.ShapeRange.Fill.Visible = msoFalse 填充色不可见
Selection.ShapeRange.Shadow.Obscured = msoTrue 指定形状的阴影有填充并被该形状所遮蔽
Selection.ShapeRange.Shadow.Type = msoShadow18 指定与形状一起显示的阴影类型为第18个类型
Selection.ShapeRange.Fill.UserPicture "d:\" & Range("A1").Value & ".jpg" 用图像填充指定的形状。图像的路径在"d:\" & Range("A1").Value & ".jpg"

参见excelVBA帮助

那几句没法理解呀!这个代码貌似EXCELHOME 论坛的袁竹平写的