公告
本专栏的相关的文章已不在简书同步更新,请直接访问 VBA探秘 官方网站或关注微信公众号获取最新文章动态。
这篇教程演示使用VBA代码在一组形状中找出尺寸最大的一个图形,也可以用来找出最小的图形。
请参考以下代码中定义的函数:
'====================================================================================================================================================================
'@desc: 在一组形状中找出尺寸最大的一个图形
'@author: Zebe
'@url: http://www.cdrvba.com
'@param sh: 图形对象集合
'@return: 返回一组形状中尺寸最大的一个图形
'====================================================================================================================================================================
Public Function getMaxSizeShapeInShapes(sh As Collection) As Shape
Dim resultShape As Shape
Dim i As Integer
Dim tempShape As Shape
If sh.Count > 0 Then
For i = 1 To sh.Count
Set tempShape = sh.Item(i)
If i = 1 Then
Set resultShape = tempShape
Else
If tempShape.SizeWidth > resultShape.SizeWidth And tempShape.SizeHeight > resultShape.SizeHeight Then
Set resultShape = tempShape
End If
End If
Next i
End If
Set getMaxSizeShapeInShapes = resultShape
End Function
相反地,如果要找出最小的图形,可以将以上代码中对尺寸的判断,将大于符号改成小于符号即可。
原创声明:本文首发于个人CorelDRAW VBA博客,请尊重文章版权。
转载请注明原文链接:http://www.cdrvba.com/coreldraw-vba-find-the-largest-shape-in-shapes
网友评论