Exce vba 如何画圆形,学会这句代码,你就会了

Exce vba 如何画圆形,学会这句代码,你就会了

首页休闲益智能画多圆游戏更新时间:2024-10-25

vba 也可以画图,这也不是什么秘密,但是用过吗?

相信不是常用Excel的人,对此也没有多少了解。

创建图形并不是Excel的强项,但是这个功能也是十分有用。

效果图

如果要做一个精彩的表格,那么就需要对图形有十分的掌握程度。

下面介绍一下如何利用代码自动建立圆形效果。

我只抛砖,能不能引玉,那就看自然了。

随机生成多个圆形

大小和颜色也是随机生成,这样每次单击按钮,效果都不一样。

如果把这个功能用到一些软件应用里面,可以大大改善应用界面的美观性,同时也会降低由于使用同一颜色带来的视觉疲劳。

整体来看这个效果还是可圈可点的,有没有感觉儿童节到了?当然了,也可画出五角星或者三角星,根据不同的选择需求,甚至可以画出一张很漂亮的画来。

只要你有创意,什么都可以做,不是吗?

重点来了

说这么多,还是要切入正题的。

先说说如何用代码。

ws.Shapes.AddShape(msoShapeOval, x, y, w, h)'画出一个圆形

解释:

ws:一个表对象,即worksheet对象

msoShapeOval:圆形标识符,这个是微软定死的,就这么用就对了

x:圆形左位置

y:圆形上位置

w:圆形宽

h:圆形高

具体应用中,可以自己设置一下不同的值来测试,可能会有意外,但不会太大。

代码放送

Sub addOval() Dim ws As Worksheet Set ws = ActiveSheet Dim o As Shape Dim x As Long, y As Long, w As Long, h As Long x = VBA.Int(800 - 100 1) * VBA.Rnd 100 y = VBA.Int(300 - 100 1) * VBA.Rnd 100 w = VBA.Int(100 - 10 1) * VBA.Rnd 10 h = w Dim r As Integer, g As Integer, b As Integer r = VBA.Int(255 - 0 1) * VBA.Rnd 0 g = VBA.Int(255 - 0 1) * VBA.Rnd 0 b = VBA.Int(255 - 0 1) * VBA.Rnd 0 Set o = ws.Shapes.AddShape(msoShapeOval, x, y, w, h) '新建一个圆形 With o .Fill.ForeColor.RGB = RGB(r, g, b)'填充圆形颜色 End With End Sub

清除圆形代码

特别提醒:

如果对以下代码不是十分熟悉,严格听取本建议,不要执行

它有可能将你的Excel文件内的相关图表删除,没有后悔的机会,所以涉及到删除相关的代码,一般不建议初学者来执行,因为有些东西,删除了就再也回不来了。

Sub ClearOvalShape()'清除圆形 Dim C As Shape For Each C In ActiveSheet.Shapes'遍历表内图形 If C.Type = 1 Then'如果是图形就删除 C.Delete End If Next C End Sub

欢迎关注、收藏

查看全文
大家还看了
也许喜欢
更多游戏

Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved