发布网友 发布时间:2022-05-04 22:12
共5个回答
热心网友 时间:2022-06-26 10:02
考虑Excel自带功能无法很好地实现你要的功能,帮你写了段宏代码。
使用方法:
调用“宏”对话窗:“开发工具”-"宏",会弹出该对话窗。
在宏对话窗里,“宏名”下的文本框里输入"chk",点击“创建”。
把下面的代码粘贴到chk过程里,保存。
调用“宏对话框,选择chk宏,点击“选项”命令按钮,设置热键,比如“Ctrl+m",确定后按“Ctrl+m"键,测试是否运行正常。
附:宏代码
Sub chk()
Dim MyValue As Long, BgnPs As Long, Nums As Long
Dim sc As Range
On Error GoTo erExit
MyValue = InputBox("输入查找值:", "突显指定单元")
Nums = Len(Trim(Str(MyValue)))
For Each sc In Selection
BgnPs = InStr(1, sc.Value, MyValue)
If BgnPs > 0 Then
sc.Characters(Start:=BgnPs, Length:=Nums).Font.Color = vbRed
End If
Next
Exit Sub
erExit: MsgBox "输入值必须是半角数字", vbOKOnly
End Sub
附:效果图
热心网友 时间:2022-06-26 10:02
如果数字或者字母都是单独占一个单元格热心网友 时间:2022-06-26 10:03
execl2003版本可以这样子操作:
点击格式按钮选择图案页签选择你要颜色点确定。就可以了
追问
谢谢你前面的解答。
可能我的意思没表达清楚:我的意思是每个单元格里的数字都有10个,只是从0到9的顺序不同,比如,1247935086,2579416803等等,我只要每个单元格里的几个数字变红,比如257,不是整个单元格里的数字都变红。烦请你再写个宏代码,谢谢!
热心网友 时间:2022-06-26 10:03
如果你的表格里面没有公式之类的东西,那么你复制到word,改好了在拷贝回去应该是最快的方法!热心网友 时间:2022-06-26 10:04
上图给个效果看看追问