![021e0f8a114d0a7cdb97c0b9b8f19891.png](https://i-blog.csdnimg.cn/blog_migrate/c8c6e9e5439ff1c9de79d55d8adf3c53.jpeg)
分享成果,随喜真能量(这是我视频教程的开场白)。大家好,今天继续和大家分享VBA编程中常用的简单“积木”过程代码第81-84讲,内容是:检查单元格A1的文本颜色并返回颜色索引,完全匹配查找,不同的工作表间进行查找取值,DO…WHILE….循环等内容。
![10c493ea27395425fe87f7b578379166.png](https://i-blog.csdnimg.cn/blog_migrate/ea57b8376913758dfb8c8d024d65b7eb.jpeg)
VBA过程代码81:检查单元格A1的文本颜色并返回颜色索引
Sub MyNZ()
TextColor=Range(“A1”).Font.ColorIndex
End Sub
代码的解析说明:上述代码的过程将,检查单元格A1的文本颜色并返回颜色索引值于变量TextColor中,其中.Font.ColorIndex是指文本的颜色索引属性。
![c747436231f9872a78726f1da93a502d.png](https://i-blog.csdnimg.cn/blog_migrate/4ad93f46dd283c6df0801fd89c76363d.png)
VBA过程代码82:VBA中的完全匹配查找
Sub MyNZ()
i = 2
TT = Cells(i, 1)
Set FJX = Sheets("X").Range("A1:A" & Sheets("A").Range("A1").End(xlDown).Row).Find(TT, LookAt:=xlWhole)
Set FJX = Nothing
End Sub
代码的解析说明:上述代码的过程将在工作表“X”中A列第一个单元格到不为空的最后一个单元格中查找TT,TT是指定的一个单元格的值Cells(i, 1),其中LookAt:=xlWhole是指完全匹配查找。
![7d014857de96534ec68e54e717723760.png](https://i-blog.csdnimg.cn/blog_migrate/2a720a6c9f080a6a0dc449b7554357e2.jpeg)
VBA过程代码83:VBA中的在不同的工作表间进行查找取值
Sub mynz ()
Sheets("1").Select
i = 2
Do While Cells(i, 1) <> ""
Cells(i, 1).Select
TT = Cells(i, 1)
Cells(i, 2) = ""
Set FJX = Sheets("2").Range("A1:A" & Sheets("2").Range("A1").End(xlDown).Row).Find(TT, LookAt:=xlWhole)
If Not FJX Is Nothing Then Cells(i, 2) = Sheets("2").Cells(FJX.Row, 2)
i = i + 1
Set FJX = Nothing
Loop
End Sub
代码的解析说明:上述代码的过程将在不同的工作表间进行查找取值。将在中Sheets("2")工作表的A列第一个单元格到不为空的最后一个单元格中查找,查找的内容是Sheets("1")工作表中Cells(i, 1)的内容,其中LookAt:=xlWhole是指完全匹配查找,如果能查找到将把Sheets("2")工作表的B列的相应内容填到Sheets("1")工作表中的B列。
以上代码中要注意的内容If Not FJX Is Nothing是指如果查找到了,那么将执行下面的操作。
Cells(i, 2) = Sheets("2").Cells(FJX.Row, 2)是指在Sheets("1")工作表中的B列中填入相应的值,这个值是Sheets("2").Cells(FJX.Row, 2),即Sheets("2")工作表的B列的相应值。
Cells(FJX.Row, 2):FJX.Row是指查找到值的行数,Cells(FJX.Row, 2)是指查找到值的那行B列的值。
VBA过程代码84:VBA中的DO…WHILE….循环
Sub mynz ()
Sheets("1").Select
i = 2
Do While Cells(i, 1) <> ""
……….
i=i+1
loop
代码的解析说明:上述代码的过程将执行一个循环,循环的条件是Cells(i, 1) <> ""即Sheets("1")工作表的i行A列的值不为空。中间的“……….”是在循环过程中将执行的操作。
越简单的事物往往越容易理解,简单的过程组合起来就是一个复杂的过程,我们要先认真掌握这些简单的过程,才能在可以为我们复杂的工程服务。
另外:下面是我根据自己20多年的VBA实际利用经验,编写的四部教程,这些是较大块的“积木”,可以独立的完成某些或者某类系统的过程,欢迎有需要的朋友联络(WeChat:NZ9668)分享。利用这些可以提高自己的编程效率。
第一套:《VBA代码解决方案》是PDF教程,是VBA中各个知识点的讲解,覆盖了绝大多数的知识点。是初学及中级以下人员必备的资料。
第二套:《VBA数据库解决方案》是PDF教程。数据库是数据处理的利器,对于中级人员应该掌握这个内容了。
第三套:《VBA数组与字典解决方案》是PDF教程,讲解VBA的精华----字典,是我们打开思路,提高代码水平的必备资料。
第四套:《VBA代码解决方案》的视频教程。目前正在录制,现在推出“每天20分钟,半年精进VBA”活动,越早参与,回馈越多。现在第一册48讲内容已经录制完成。录制到第二册65讲的课程,开始第二级阶段的优惠期。