永发信息网

excel vba 怎么让这条代码,多加几个“包含”某某文字的,的条件

答案:2  悬赏:50  手机版
解决时间 2021-11-24 13:29
excel vba 怎么让这条代码,多加几个“包含”某某文字的,的条件
最佳答案
如果只有两三个,就用OR了,你写出来发现不对,那是优先级的问题,给OR加括号,例如:
If (Instr(Range("a" & i) ,"-F")>0 OR Instr(Range("a" & i) ,"-B")>0 OR Instr(Range("a" & i) ,"-C")>0)  and rows(i).hidden=false 


事实上VBA不支持布尔短路运算,这样写更好,可以减少比较的次数:
If rows(i).hidden=false  then
 If (Instr(Range("a" & i) ,"-F")>0 OR Instr(Range("a" & i) ,"-B")>0 OR Instr(Range("a" & i) ,"-C")>0) Then
end if

如果需要判断许多,可以使用for each循环,例如:
ok=0
v=Range("a" & i)
for each t in Array("-F","-B","-C")
    if instr(v,t)>0 then
        ok=1
        exit for
    end if
next t
if ok=1 and rows(i).hidden=false不过这样仅仅是为了程序代码简洁,对效率没有多大的好处

全部回答
试试将-B、-C、-F等放在数组中。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
17伏交流整流滤波后24伏了,这个电流怎么算?
我是月入一万左右的小白领,应该如何理财?
一首歌exec cosmolips,目测是一部动漫的ngm,
polo两年2万公里需要做什么保养?
羽绒服和毛呢大衣你怎么选?
联想黄斗士a7600换外放喇叭多少钱
减肥微信号
宽途汽车(一番车道金山店)地址在什么地方,我
qcma怎么传游戏
想买古钱就是找不到卖家
本文围绕"白开水"这一话题,具体说明了哪几个
数学题跪求帮忙m
得胜E260w无线无法接收为什么
这上面俩行数字是干嘛的
广点通开户需要什么资质,开户被拒了怎么办
推荐资讯
老北京足贴贴在个个位置的效果
发量较少适合什么编发
求一部电影,大约是7-10年前的,在中央6套看
java 打包成jar后不能读取jar包内的图片的问
自贡市沿滩区安全生产监督管理局地址好找么,
EXCEL怎么对多个单元格进行剪切
gtp写谱,连音该怎样画???
我该为了宝宝放弃自己喜欢的工作吗
十进制88转换为二进制是多少?16进制是多少?
为什么一插电源 电脑开不了机了
如何让承诺具有法律效力
比与除法,分数有哪些联系和区别
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?