Excel VBA教程:Shapes集合

   
多个对象
Shapes
多个对象

指定的工作表上的所有Shape对象的集合。每个 Shape对象代表绘图层上的一个对象,如自选图形、任意多边形、OLE对象或图片。

注意   如果要处理文档中所有图形的一个子集(例如,只对文档中的自选图形对象,或只对选定的图形执行一些操作),就必须构造一个包含要处理的图形的ShapeRange集合。有关如何处理单个图形或同时处理多个图形的概述,请参阅处理图形(绘图对象)

Shapes集合用法

可用 Shapes属性返回 Shapes集合。下例选定 myDocument 上的所有图形。


Set myDocument = Worksheets(1)
myDocument.Shapes.SelectAll

注意   如果要同时对工作表上的所有图形进行某项操作(例如删除或设置属性),请选定所有图形,然后对选定区域应用 ShapeRange属性以创建一个包含工作表上所有图形的 ShapeRange对象,然后对 ShapeRange对象应用适当的属性或方法。

可用 Shapes(index)(其中 index 是图形的名称或索引号)返回单个的 Shape对象。下例设置myDocument 上第一个图形的预设阴影的填充。


Set myDocument = Worksheets(1)
myDocument.Shapes(1).Fill.PresetGradient _
    msoGradientHorizontal, 1, msoGradientBrass

可用 Shapes.Range(index)(其中 index 是图形的名称或索引号或是它们的一个数组)返回ShapeRange集合,该集合代表 Shapes集合的一个子集。下例设置myDocument 上的第一个和第三个图形的填充图案。


Set myDocument = Worksheets(1)
myDocument.Shapes.Range(Array(1, 3)).Fill.Patterned _
    msoPatternHorizontalBrick

说明

工作表中的 ActiveX 控件具有两个名称:一个是包含该控件的图形的名称(在查看该工作表时,将显示在“名称”框中),还有一个是该控件的代码名称(“属性”窗口中“(名称)”右边的单元格中)。当首次向工作表中添加控件时,图形名称和代码名称相同。但是,更改其中任何一个名称时,另一个名称并不会自动随之更改。

在控件事件过程名称中使用的是控件的代码名称,但是,当您从工作表的 Shapes 或 OLEObjects集合中返回控件时,必须使用图形名称而不是代码名称,只有这样才能通过名称引用控件。例如,假定要向工作表中添加一个复选框,其默认的图形名称和代码名称都是 CheckBox1。如果通过在“属性”窗口的“(名称)”旁边键入“chkFinished”而更改了控件代码名称,则在事件过程名称中必须使用 chkFinished,但是您仍然需要使用 CheckBox1 从 Shapes 或 OLEObject集合中返回控件,如下例所示。


Private Sub chkFinished_Click()
    ActiveSheet.OLEObjects("CheckBox1").Object.Value = 1
End Sub

上页:Excel VBA教程:ShapeRange集合 下页:Excel VBA教程:Sheets集合对象

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对象
Excel VBA教程:ThreeDFormat对象 Excel VBA教程:TickLabels对象
Excel VBA教程:TreeviewControl对象 Excel VBA教程:Trendline对象
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号