打开vbe,插入模块,或者直接双击这个,能得到一个空白的代码编辑区![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/267f9e2f070828385ee8247fb399a9014d08f1f0?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
然后复制以下代码:
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
然后效果如下:
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/c9fcc3cec3fdfc03616418d3df3f8794a4c226b9?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
运行代码的时候,会提示你输入一个查找的字符串,然后点击确认就可以了。这里我查找了所有包含"42"这个字符串的单元格。
需要注意的是:
1、第一列(A列)不能为空,如果为空,那整行都不会被读取到。这是个问题,但可以解决的。
2、我用的是excel2016,最大列是xfd列。如果你是低版本的excel,请按住ctrl+方向右键,看一下最大列是多少,然后把那个XFD改成你的最大列。
不是说好了代码吗?最佳答案还是手工操作的?给跪了。。。