您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > ExcelVBA实例教程056遍历工作表中的图形
工作表中的多个图形,如果使用系统缺省名称,如“文本框1”、“文本框2”这样前面是固定的字符串,后面是序号的,可以使用For...Next语句遍历图形,如下面的代码所示。1.SubErgShapes_1()2.DimiAsInteger3.Fori=1To44.Sheet1.Shapes(文本框&i).TextFrame.Characters.Text=5.Next6.EndSub代码解析:ErgShapes_1过程清除工作表中四个图形文本框中的文字。第3行到第5行代码,使用Shapes属性在工作表上的三个图形文本框中循环。Shapes属性返回Shapes对象,代表工作表或图形工作表上的所有图形,可以使用Shapes(index)返回单个的Shape对象,其中index是图形的名称或索引号。返回单个的Shape对象后使用TextFrame属性和Characters方法清除文本框中的字符,关于Shape对象的TextFrame属性和Characters方法请参阅技巧53。如果图形的名称没有规律,可以使用ForEach...Next语句循环遍历所有图形,根据Type属性返回的图形类型进行相应的操作,如下面的代码所示。1.SubErgShapes_2()2.DimmyShapeAsShape3.DimiAsInteger4.i=15.ForEachmyShapeInSheet1.Shapes6.IfmyShape.Type=msoTextBoxThen7.myShape.TextFrame.Characters.Text=这是第&i&个文本框8.i=i+19.EndIf10.Next11.EndSub代码解析:ErgShapes_2过程在工作表中的所有图形文本框中写入文本。第5行代码使用ForEach...Next语句循环遍历工作表中所有的图形对象。第6行到第9行代码如果图形对象是文本框则在文本框中写入文本。其中第6行代码根据Type属性判断图形对象是否为文本框,应用于Shape对象的Type属性返回或设置图形类型,MsoShapeType类型,请参阅表格541。第7行代码根据返回的Type属性值在所有的文本框内写入相应的文本,如图1所示。图1遍历所有的文本框
本文标题:ExcelVBA实例教程056遍历工作表中的图形
链接地址:https://www.777doc.com/doc-2873024 .html