作者:绿色风
分类:
时间:2022-08-17
浏览:246
楼主 biaotiger1 |
Q:如何用VBA逐字设置形状内插入文字的大小及颜色? A:右键单击sheet1工作表,弹出快捷菜单→“查看代码”,在代码窗口中输入代码如下:
- Sub 逐字设置字体大小及颜色()
- With Sheet1.Shapes.AddShape(msoShapeRoundedRectangle, 100, 100, 300, 100)
- .TextFrame2.TextRange.Characters.Text = InputBox("请输入文字,该文字将显示在文本框内", "提示", "我们都是中国人我们都是中国人")
- .TextFrame2.AutoSize = msoAutoSizeShapeToFitText
- For I = 1 To .TextFrame2.TextRange.Characters.Count
- With .TextFrame2.TextRange.Characters(I, 1).Font
- .Size = Rnd * 72
- .Fill.ForeColor.RGB = RGB(Rnd * 255 + 1, Rnd * 255 + 1, Rnd * 255 + 1)
- End With
- Next I
- End With
- End Sub
运行以上代码,则在sheet1工作表中插入一个圆角矩形,同时弹出提示框提示用户输入文字。输入文字后即可看到圆角矩形内的文字大小及颜色随机设置的效果。 详见附件。 逐字设置字体大小及颜色.rar |
2楼 sam.tan |
biaotiger版, 为何我在运行该代码时出现“对象不支持该属性或方法”的提示,是不是我的Ex2003版本太低了?
谢谢 |
3楼 biaotiger1 |
2003版本代码如下- Sub 逐字设置字体大小及颜色()
- With Sheet1.Shapes.AddShape(msoShapeRoundedRectangle, 100, 100, 300, 100)
- .TextFrame.Characters.Text = InputBox("请输入文字,该文字将显示在文本框内", "提示", "我们都是中国人我们都是中国人")
- .TextFrame.AutoSize = True
- For I = 1 To .TextFrame.Characters.Count
- With .TextFrame.Characters(I, 1).Font
- .Size = Rnd * 72
- .Color = RGB(Rnd * 255 + 1, Rnd * 255 + 1, Rnd * 255 + 1)
- End With
- Next I
- End With
- End Sub
|
4楼 sam.tan |
谢谢biaotiger版主. |
5楼 sam.tan |
注册过不少网站,真的只有我们这个网很人性, 非常感谢ET的高手们,精英们,
不恃才为傲 有问必答 不辞劳苦
|
6楼 kevinchengcw |
不错的资料 |
免责声明
有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素,
经与ExcelTip.Net站长Apolloh商议并征得其同意,
现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示,
供有需要的人士查询使用,也慰缅曾经的论坛时代。
所示各个帖子的原作者如对版权有异议,
可与本人沟通提出,或于本站点留言,我们会尽快处理。
在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一