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属性,可参考以前的一些文章有介绍。

  关注、收藏

  —END—

(0)
上一篇 2022年7月6日
下一篇 2022年7月6日

相关推荐