Excel VBA教程:Shape对象

   
多个对象
Shape
多个对象

代表绘图层中的对象,如自选图形、任意多边形、OLE对象或图片。Shape对象是Shapes集合的成员。Shapes集合包含幻灯片上的所有图形。

注意   有三个代表图形的对象:Shapes集合,该集合代表文档中的所有图形;ShapeRange集合,该集合代表文档中的图形的指定子集(例如,ShapeRange对象可能代表文档中的第一个和第四个图形,或者代表文档中所有选定的图形);以及 Shape对象,该对象代表文档中的单个图形。如果同时处理若干图形,或处理选定的图形,可用 ShapeRange集合。有关如何处理单个图形或同时处理若干图形的概述,请参阅处理图形(绘图对象)

Shape对象用法

本部分说明了下述内容:

返回现有的图形

可用 Shapes(index)(其中 index 为图形的名称或索引号)返回代表某一图形的 Shape对象。下例将 myDocument 中第一个图形和名为“Rectangle 1”的图形进行水平翻转。


Set myDocument = Worksheets(1)
myDocument.Shapes(1).Flip msoFlipHorizontal
myDocument.Shapes("Rectangle 1").Flip msoFlipHorizontal

向 Shapes集合添加新的图形时,将对该新添加的图形赋以默认的名称。若要为图形指定更有意义的名称,可使用 Name属性。下例向 myDocument 添加矩形,将其命名为“Red Square”,然后设置该矩形的前景色和线型。


Set myDocument = Worksheets(1)
With myDocument.Shapes.AddShape(msoShapeRectangle, _
        144, 144, 72, 72)
    .Name = "Red Square"
    .Fill.ForeColor.RGB = RGB(255, 0, 0)
    .Line.DashStyle = msoLineDashDot
End With

返回选定区域内的图形

可用 Selection.ShapeRange(index)(其中 index 为图形的名称或索引号)返回代表某一选定图形的 Shape对象。下例设置了活动窗口内选定图形中的第一个图形的填充格式,假定至少选定了一个图形。


ActiveWindow.Selection.ShapeRange(1).Fill.ForeColor.RGB = _
    RGB(255, 0, 0)

返回附加到连接符端点上的图形

若要返回代表附加到连接符的某一端点上的图形的 Shape对象,可使用BeginConnectedShape属性或EndConnectedShape属性。

返回新建的任意多边形

可用BuildFreeform方法和AddNodes方法定义新建的任意多边形的几何图形。用ConvertToShape方法创建任意多边形并返回代表它的 Shape对象。

返回组合内的单个图形

可用 GroupItems(index)(其中 index 为图形的名称或在组合中的索引号)返回代表组合图形中的单个图形的 Shape对象。

返回新建的图形组合

可用GroupRegroup方法来组合一批图形,并返回代表新构造的组合的单个 Shape对象。在构造完一个新组合后,可以像对其他图形一样来处理它。

上页:Excel VBA教程:ShadowFormat对象 下页:Excel VBA教程:ShapeNode对象

Excel VBA教程:Shape对象

Excel VBA教程:ShapeNode对象 Excel VBA教程:ShapeNodes集合对象
Excel VBA教程:ShapeRange集合 Excel VBA教程:Shapes集合
Excel VBA教程:Sheets集合对象 Excel VBA教程:SmartTag对象
Excel VBA教程:SmartTagAction对象 Excel VBA教程:SmartTagActions集合
Excel VBA教程:SmartTagOptions对象 Excel VBA教程:SmartTagRecognizer对象
Excel VBA教程:SmartTagRecognizers集合 Excel VBA教程:SmartTags集合
Excel VBA教程:SoundNote对象 Excel VBA教程:Speech对象
Excel VBA教程:SpellingOptions对象 Excel VBA教程:Style对象
Excel VBA教程:Styles集合 Excel VBA教程:Tab对象
Excel VBA教程:TextEffectFormat对象 Excel VBA教程:TextFrame对象
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号