Excel 技巧:在大量数据中提取特定数据 自学考试考生成绩公布了, 但上级下发到各报名点的是全地区所有考生的总成绩 zcj.dbf,有 80 多万条记录,5 万多名考生,而我们报名点参加考试的只有 800 多人, 怎么从这“茫茫人海”中挑出我们考生的成绩呢? 情况分析 1. 根据 zcj.dbf 中的字段不能区分各报名点。 2. 我们报名点的考生准考证号并不连续,用附加条件的删除记录方法,不能完 全准确地剔除其他报名点考生。 解决方案 1. 先从《高等教育自学考试考务管理系统·报考系统》中导出考生信息,生成 文件 ks.dbf。 具体方法:启动 FoxPro,执行“系统→输出数据”命令,在随即出现的一系列 对话框中,依次单击〔选择数据〕、〔生成 Select 语句〕、〔确定〕、〔提取数据〕 按钮,在“数据输出”对话框“数据提取结果”项中,执行鼠标右键菜单“输出(不 用于上报下发)”命令(如图 1)。在随即出现的“另存为”对话框中,保存类型选 择“可重新载入的 DBF 文件(*.dbf)”,文件名取为“ks”(如图 2),单击〔保 存〕按钮,退出报考系统。 图1 图2 2. 启动 VF6.0,执行“文件→新建”命令,创建数据库 tq.dbc。 3. 执行“数据库→添加表”命令,将 ks.dbf、zcj.dbf 两表添加至数据库 tq.dbc (如图 3)。 图3 4. 执行“数据库→新建本地视图→视图向导”命令,选择“ks.dbf”表中的“k s_zkz”、“ks_xm”字段和“zcj.dbf”表中的“kc_mc”、“bk_cj”字段作为视图 输出时使用的字段(如图 4)。 图4 5. 单击〔下一步〕按钮,进入建立表间关系的对话框,单击〔添加〕按钮,将 关系表达式“ks.ks_zkz=zcj.ks_zkz”加入到关系列表(如图 5)。 图5 6. 单击〔下一步〕按钮,视图输出时包含记录选择“仅包含匹配的行”。 7. 单击〔下一步〕按钮,进入筛选记录的对话框,不进行任何设置。继续单击 〔下一步〕按钮,进入排序记录的对话框,单击〔添加〕按钮,将“ks.ks_zkz”添 加到“选定字段”列表框,选择“升序”单选按钮(如图 6)。 图6 8. 单击〔下一步〕按钮,进入限制记录的对话框,“部分类型”选择“所占记 录百分比”,“数量”选择“所有记录”。 9. 单击〔下一步〕按钮,选择“保存本地视图”,单击〔完成〕按钮。在“视 图名”文本框中,键入“view”,单击〔确认〕按钮。最终结果如图 7。 图7 10. 选中视图“view”,执行“数据库→浏览”命令,查看视图结果。 11. 执行“文件→导出”命令,将视图结果导出成 DBF 或 Excel 格式文件。详 细操作不再赘述,可参考相关文章。 至此,我们报名点考生成绩提取完毕。