当前位置:编程学习 > VB >>

用VB实现Excel的高级筛选功能

现有如下数据:
学号        姓名        课程名称        成绩        课程性质
2012001        张三        语文        100        必修课
2012001        张三        数学        90        必修课
2012001        张三        英语        80        必修课
2012002        李四        语文        45        必修课
2012002        李四        化学        56        选修课
2012002        李四        物理        63        选修课
2012003        王五        语文        89        必修课
2012003        王五        历史        62        选修课

要筛选不重复的课程,在excel可以删掉学号、姓名、成绩,只把课程名称和课程性质用高级筛选,选择不重复的记录,可以得到:
课程名称        课程性质
语文        必修课
数学        必修课
英语        必修课
化学        选修课
物理        选修课
历史        选修课

在VB里能否实现此功能?
比如将原数据赋值给数组:
a(0,1)        a(0,2)        a(0,3)        a(0,4)        a(0,5)
a(1,1)        a(1,2)        a(1,3)        a(1,4)        a(1,5)
a(2,1)        a(2,2)        a(2,3)        a(2,4)        a(2,5)
a(3,1)        a(3,2)        a(3,3)        a(3,4)        a(3,5)
a(4,1)        a(4,2)        a(4,3)        a(4,4)        a(4,5)
a(5,1)        a(5,2)        a(5,3)        a(5,4)        a(5,5)
a(6,1)        a(6,2)        a(6,3)        a(6,4)        a(6,5)
a(7,1)        a(7,2)        a(7,3)        a(7,4)        a(7,5)
a(8,1)        a(8,2)        a(8,3)        a(8,4)        a(8,5)

怎么处理可以得到另一个数组,并输出出来呢?假设原始数组是a数组,处理后是z数组
z(0,1)        z(0,2)
z(1,1)        z(1,2)
z(2,1)        z(2,2)
z(3,1)        z(3,2)
z(4,1)        z(4,2)
z(5,1)        z(5,2)
z(6,1)        z(6,2)

如果以王五的必修课作为标准,用inputbox输入王五的学号2012003
在筛选时取王五的必修课,和其他学生的选修课
输出结果是:
课程名称        课程性质
语文        必修课
化学        选修课
物理        选修课
历史        选修课

这个功能用VB能否做到? VB高级筛选 用字典......
引用 1 楼 Topc008 的回复:
用字典......

我能想到的也是用字典,还有没有更简单的方法?
用字典的话程序怎么写?兄弟能否则指点一二?
补充:VB ,  基础类
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,