定义换颜色的过程。(“换颜色”是宏的名称)
定义参数i为:1到100。
选中第一列的i行所有单元格区域。(也就是第一列第一行到第一列第一百行。)
定义参数X为:1到单元格长度。(比如单元格长度为4,则X的值就是1到4之间的数,如果单元格的数值长度为0,也就是空,则X的赋值是0到1)
在单元格中,第X个字符开始从左往右返回1个字符。(因为X本身是一个变量,所以在这里等价于是在单元格中从任意一个字符开始数。)如果将取得的字符返回到单元格中之后等于“李”,那么。
将单元格从第X个字符开始从左往右数返回的1个字符颜色值设定为5。(同上,实际上把含有“李”的单元格中的所有字符都变了颜色)
结束上述如果。
循环。
结束宏过程。
这是一个根据Excel存储格中的字符特征来自动变更字符颜色的VBA宏代码。
这段代码的作用是将Excel工作簿中A列的第1格一直到下面的第100格中的每个"李"字表为蓝色
For i = 1 To 100 '从1到100,结合下面一句,从A1到A100
Cells(i, 1).Select
For x = 1 To Len(Cells(i, 1)) 从当前单元格的第一个字符到最后一个字符
If Mid(Cells(i, 1), x, 1) = "李" Then 如果有一个字符是 “李”,单元格颜色改变
ActiveCell.Characters(Start:=x, Length:=1).Font.ColorIndex = 5
End If
Next
Next
End Sub
'备注 :内循环可以用方法替代