在excel中如何用vba来实现查找特定的字符串?

例如excel中有一列的值分别是invalidtype,invalidstatus,invalidtype.invalidstatus,invalidtype.inval... 例如excel中有一列的值分别是
invalidtype,
invalidstatus,invalidtype.
invalidstatus,
invalidtype.invalidstatus,invalidcode
如何在这些单元格中判断是否含有特定的字符串invalidstatus?
希望高手帮忙,这个问题比较急,在线等待···
展开
 我来答
很多游戏
高粉答主

2019-11-16 · 游戏精通者,攻略技能点满
很多游戏
采纳数:91 获赞数:386854

向TA提问 私信TA
展开全部

1、首先打开需要编辑的Excel表格,进入到编辑的的页面中。

2、然后在弹出来的窗口中,鼠标右键单击工作表,选择打开“查看代码”。

3、然后在弹出来的窗口中,点击输入代码:

Sub AAA()

Dim I As Long

For I = 1 To 1000 '行 范围,自己修改

If InStr(Range("A" & I), "invalidstatus") > 0 Then

Range("A" & I).Font.Color = vbRed

End If

Next

End Sub

4、然后进行保存,点击运行就完成了。

鱼木混猪哟
高粉答主

推荐于2016-04-28 · 专注Office,尤其Excel和VBA
鱼木混猪哟
采纳数:6079 获赞数:33680

向TA提问 私信TA
展开全部
Sub Main()
Dim I As Long
For I = 1 To 1000 '行数,可以根据实际情况进行修改
If InStr(Range("A" & I), "invalidstatus") > 0 Then'假设数据都在A列中,从第一行开始
Range("A" & I).interior.Color = vbRed
End If
Next
End Sub
如果包含特定的字符串,则单元格填充为红色。

关于此例中用到的Instr函数的详细讲解:

InStr 函数
返回 Variant (Long),指定一字符串在另一字符串中最先出现的位置。

InStr([start, ]string1, string2[, compare])
InStr 函数的语法具有下面的参数:
start 可选参数。为数值表达式,设置每次搜索的起点。如果省略,将从第一个字符的位置开始。如果指定了 compare 参数,则一定要有 start 参数。
string1 必要参数。接受搜索的字符串表达式。
string2 必要参数。被搜索的字符串表达式。
Compare可选参数。指定字符串比较。如果省略 compare,Option Compare 的设置将决定比较的类型。
compare 参数设置为:
常数 值 描述
vbUseCompareOption -1 使用Option Compare 语句设置执行一个比较。
vbBinaryCompare 0 执行一个二进制比较。
vbTextCompare 1 执行一个按照原文的比较。
vbDatabaseCompare 2 仅适用于Microsoft Access,执行一个基于数据库中信息的比较。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
crazy0qwer
2013-04-16 · TA获得超过3299个赞
知道大有可为答主
回答量:4020
采纳率:71%
帮助的人:1260万
展开全部
Sub AAA()
Dim I As Long
For I = 1 To 1000 '行 范围,自己修改
If InStr(Range("A" & I), "invalidstatus") > 0 Then
Range("A" & I).Font.Color = vbRed
End If
Next
End Sub
运行后含有这个字符的单元格字体为红色。
更多追问追答
追问
这个A是代表的循环列吧。试验了一下是可以出来的,非常感谢···
我还有一个问题想请教一下。如果有一列类似于:
1.10089E+15
47GS794600000000
4.19504E+14 ,
如何 用vba的函数把这一列的所有科学计数法改成普通的一般的计数,类似于:
1100890502000600
47GS794600000000
419504100000000
非常感谢你。这个问题比较急,我在线等你哈···
追答
试试这个,没有做过太多验证,你自己测试看看数据对不对再用

Sub AAA()
Dim Ar
Ar = Columns("A").Formula
Columns("A").NumberFormatLocal = "@"
Columns("A") = Ar
End Sub
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式