|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
建议不要用If语句。用select case来做。大体的伪代码如下:
select case "年级"
case is <7
select case "班级"
case 1,2,4,6
select case "入学日期"
case is <#2010-2-1#
case ………………
end select
end select
case else
select case "班级"
case 1,2,4,6
select case "入学日期"
case is <#2010-2-1#
case ………………
end select
end select
end select
不过,这些为什么不能通过建立一个基础数据表来实现呢?
年级 班级 入学日期 学费
1 101 2010-1-31 1200
1 102 2010-1-31 1500
1 101 2011-2-28 1700
…………………………………………
只需要用Dlookup或者DLast来判断入学日期(不必把所有日期都列出来),即可返回学费了。这是最直接也是最直观的做法。
楼主对基础表的认识可能还不足。写代码当然不是不可以,而且,虽然缩进可以更加直观,但是一旦参数变动时,修改代码、调试都不是一件很方便的事情。如果是基础表,只需要增加或者修改某条记录,查询结果即可显示是否正确了。 |
|