Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 9729|回复: 11

求助,如何在vba中a同时满足两个条件?

[复制链接]
发表于 2017-5-16 23:21 | 显示全部楼层 |阅读模式
求助!
比如说 function aaa(x = boolean)if x满足1-10之间取值同时a不能等于1,3,5 then aaa= true
否则就是false


x同时满足两个条件怎么写?
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2017-5-17 09:46 | 显示全部楼层
最好上传一个附件,这样便于判断。
回复

使用道具 举报

发表于 2017-5-17 09:49 | 显示全部楼层
也可以用and,比如:IF (条件1 and 条件2) Then
回复

使用道具 举报

 楼主| 发表于 2017-5-17 13:22 | 显示全部楼层
我试了很久但是不行

我尝试了一个简单的假设,比如说x要同时满足1-5区间但是不等于4这个条件

function aaa(x as boolean)
if (1<=x<=5 and x<>4 ) then aaa = true
else
aaa = false
end if

但是我试验了很久,如果在function里面输入4,依旧会显示true。不知道应该怎么解决这个事情。
回复

使用道具 举报

发表于 2017-5-17 13:28 | 显示全部楼层
本帖最后由 327718098 于 2017-5-17 13:32 编辑
findvba 发表于 2017-5-17 13:22
我试了很久但是不行

我尝试了一个简单的假设,比如说x要同时满足1-5区间但是不等于4这个条件

if 1<=x and x<=5 and x<>4  then
aaa=true
当if只判断真值时,真值结果才可以与判断条件在同行,否则要隔行
回复

使用道具 举报

发表于 2017-5-17 14:24 | 显示全部楼层
findvba 发表于 2017-5-17 13:22
我试了很久但是不行

我尝试了一个简单的假设,比如说x要同时满足1-5区间但是不等于4这个条件

要么写成
  1. If x >= 1 And x <= 5 And x <> 4 Then
  2.     b = True
  3. Else
  4.     b = False
  5. End If
复制代码
要么写成
  1. If x >= 1 Then
  2.     If x <= 5 Then
  3.         If x <> 4 Then
  4.             b = True
  5.         End If
  6.     End If
  7. End If
复制代码


回复

使用道具 举报

发表于 2017-5-17 15:14 | 显示全部楼层
也可以写成
if x>=1 then a1=1
if x<=5 then a1=a1+1
if x<>4 then a1=a1+1
if a1=3 then
b=true
else
b=false
end if
回复

使用道具 举报

 楼主| 发表于 2017-5-17 16:28 | 显示全部楼层
本帖最后由 findvba 于 2017-5-17 16:46 编辑
france723 发表于 2017-5-17 14:24
要么写成要么写成

感谢老师!但是我试了两种类型都不能得出最后true的结果。
一者为0,后一个只能得出false。
微信截图_20170517182347.png 微信截图_20170517183754.png
回复

使用道具 举报

发表于 2017-5-17 16:41 | 显示全部楼层
findvba 发表于 2017-5-17 16:28
感谢老师!但是我试了两种类型都不能得出最后true的结果。
一者为0,后一个只能得出false。

你定义开关变量x ( x as boolean), 结果后面 b= ture,b= false.
x,b你弄反了
回复

使用道具 举报

 楼主| 发表于 2017-5-17 16:50 | 显示全部楼层
france723 发表于 2017-5-17 16:41
你定义开关变量x ( x as boolean), 结果后面 b= ture,b= false.
x,b你弄反了

b是function name, x是变量
所以结论不应该是 b= true or b=false?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-29 05:21 , Processed in 0.280546 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表