用Excel判断某区域单元格内是否包含特定文本,如包含,则将该单元格染色。应该怎么写代码。初学,谢谢

如题所述

打开vbe,插入模块,或者直接双击这个,能得到一个空白的代码编辑区

然后复制以下代码:

Sub 查找特定字符()

Dim i As Integer
Dim j As Integer
Dim zfc As String '字符串
zfc = InputBox("输入查找字符", "提示", 672277923)
For i = 1 To Range("a65536").End(xlUp).Row
    For j = 1 To Range("xfd" & i).End(xlToLeft).Column
        If InStr(Cells(i, j), zfc) <> 0 Then
        Cells(i, j).Interior.ColorIndex = 3
        End If
    Next j
Next i
End Sub

然后效果如下:

运行代码的时候,会提示你输入一个查找的字符串,然后点击确认就可以了。这里我查找了所有包含"42"这个字符串的单元格。

需要注意的是:

1、第一列(A列)不能为空,如果为空,那整行都不会被读取到。这是个问题,但可以解决的。

2、我用的是excel2016,最大列是xfd列。如果你是低版本的excel,请按住ctrl+方向右键,看一下最大列是多少,然后把那个XFD改成你的最大列。

不是说好了代码吗?最佳答案还是手工操作的?给跪了。。。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-10-19

可以通过条件格式来实现:

1、选定范围---开始----条件格式------只为包含以下内容的单元格设置格式---指定为特定文本---指定文本内容(比如AA)---指定格式-----

2、在设置单元格格式对话框中----填充----指定颜色---确定---确定

3、结果:

本回答被网友采纳
相似回答