读书人

这个效果用vba能实现么?该怎么解决

发布时间: 2013-01-26 13:47:01 作者: rapoo

这个效果用vba能实现么?
我在一个excel的sheet页里,

画出 几十个 矩形,
有的矩形的边框是蓝色的,
有的边框的颜色需要是红色的,
矩形里的文字也有的是黑体,有点需要是宋体。
大概会有10种图形格式吧。

能不能做个vba,
比如说,做一排10个按钮,每个按钮代表一个效果。

然后,我选中N个矩形,
需要都设置成蓝色边框时,我就点一下那个按钮就行,
需要设置成红色边框时,我点另外一个按钮就行。

不用再一步步设置颜色和字体之类的操作了。

[解决办法]

引用:
录制宏没问题,
但是解决不了我这个问题。

因为,
你选中N个矩形后,
你在点 按钮 的时候,
那些矩形就失去了焦点,

无法 将 那些矩形 存到selection里。

使用“窗体”里的按钮,不要使用控件工具箱里的命令按钮
Sub Test()
If TypeName(Selection) = "Rectangle" Or TypeName(Selection) = "DrawingObjects" Then '判断选中的是矩形
Selection.ShapeRange.Line.DashStyle = msoLineDash '边框设为虚线
Selection.ShapeRange.Fill.ForeColor.SchemeColor = 12 '背景设为蓝色
End If
End Sub

读书人网 >VB

热点推荐