打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Excel之VBA常用功能应用篇:VBA不同文字设置不同颜色和字体

Excel工作表中,每个单元格里的内容不同,但是想要每个单元格里的每个字符文本格式也不同,设置起来就有点麻烦了,怎么设置呢?

通常方法就是,选中要设置的字符,然后在工具栏上找到相应的格式选项。很简单,但是一项比较无趣的事情。

本节就将这一功能,用VBA代码来解释一下,其工作原理是怎样进行的。

首先看下图,本示例实现对文本字体、颜色、字号大小进行设置。根据自己需要可简单修改一下实现一键完成。

实现此功能将应用到一个对象:Characters

Range对象可返回Characters对象

语法:

Characters(Start,Lenght)

Start是字符串开始位置,Lenght是字符串长度。

如:

Range("A1").Characters(1,3)

直接返回A1单元格内第1个字符到第3个字符的一个Characters对象,假如A1单元格内容为"Jiang Mi",那么将返回一个"Jia",当然了,Jia只是这个对象的Text值。

代码:

Private Sub CommandButton1_Click()

Dim r As Range, rx As Range, i As Integer

Set rx = Range("B3:B8") '定义单元格区域

For Each r In rx

i = i + 1

r.Offset(0, 1).Value = r.Characters.Count '对象数量

With r.Characters(1, r.Characters.Count).Font '设置字符格式

.Size = 18

.Bold = True

.Color = QBColor(9)

End With

With r.Characters(i, 1)

.Text = VBA.UCase(r.Characters(i, 1).Text)

.Font.Color = RGB(233, 2, 2)

End With

Next r

End Sub

Characters对象有两个方法,一个是Delete,删除,一个是Insert,插入。

这两个方法都好理解,一个是把对象删除,一个是在对象前面插入字符串。

使用方法如下代码:

Private Sub CommandButton2_Click()

Dim r As Range

Set r = Range("B3:B8")

r.Characters(1, r.Characters.Count).Delete

End Sub

Private Sub CommandButton3_Click()

Dim r As Range, rx As Range, i As Integer

Set rx = Range("B3:B8")

For Each r In rx

i = i + 1

With r.Characters(1, 1) 'r.Characters.Count)

.Insert "A"

End With

Next r

End Sub

Characters对象属性主要是Font,因为是字符串操作,所以Font格式的设置就显得特别重要,关于Font属性,可参考以前的一些文章有介绍。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Excel VBA中的cells单元格的用法
自动化神器—VBA
别怕,我是宏!VBA系列之元素篇(0基础学员必看)
VBA新手入门篇 - excel函数,excel公式,excel学习,excel基础,ex...
VBA:单元格基本操作(1)
获取excel多列区域最后非空单元格行数(VBA5练习2)——答案
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服