20.6 “Microsoft Query”查询不重复数据

示例20.6 使用Microsoft Query查询不重复数据创建数据透视表

“Microsoft Query”是由Microsoft Office提供的一个查询工具。它使用SQL语言生成查询语句,并将这些语句传递给数据源,从而可以更精准地从外部数据源中导入匹配条件的数据到Excel中。

图20-39所示列示了某公司员工2012-5-2的考勤打卡记录,因考勤机故障,致使导出的打卡记录中部分记录出现重复,现在需要将重复的数据删除并且还要统计员工的打卡次数,请参照以下步骤。

img454

图20-39 某公司员工2011-5-2的考勤打卡记录

步 骤1img01

新建一个Excel工作簿,将其命名为“使用Microsoft Query查询不重复数据创建数据透视表.xlsx”,打开该工作簿,将Sheetl工作表改名为“考勤统计”,然后删除其余的工作表。

步 骤2img01

在【数据】选项卡中单击【自其他来源】按钮,在出现的扩展列表中选取【来自Microsoft Query】,弹出【选择数据源】对话框,单击【数据库】选项卡,在编辑框中选中“Excel Files*”类型的数据源,并取消【使用“查询向导”创建/编辑查询】复选框的勾选,如图20-40所示。

img455a

图20-40 【选择数据源】对话框

注意img01

必须取消“使用‘查询向导’创建/编辑查询”复选框的勾选,否则将进入“查询向导”模式,而不是“Microsoft Query”。

步 骤3img01

单击【确定】按钮,“Microsoft Query”自动启动,并弹出【选择工作簿】对话框。选择要导入的目标文件的所在路径,单击【确定】按钮,激活【添加表】对话框,如图20-41所示。

img455b

图20-41 按路径选择数据源工作簿

步 骤4img01

在【添加表】对话框的【表】编辑框中选中“打卡记录$”,单击【添加】按钮向“Microsoft Query”添加数据列表,如图20-42所示。

步 骤5img01

单击【关闭】按钮关闭【添加表】对话框,在【打卡记录$】编辑框中双击“*”(星号)向数据窗格中添加所有数据记录,如图20-43所示。

步 骤6img01

依次在【Microsoft Query】菜单栏中单击【视图】一【查询属性】,弹出【查询属性】对话框,勾选【不选重复的记录】复选框,然后单击【确定】按钮关闭对话框,如图20-44所示。

img456a

图20-42 将数据表添加至Microsoft Query

img456b

图20-43 向数据窗格中添加数据

img456c

图20-44 不选重复的记录

步 骤7img01

单击【Microsoft Query】工具栏中的img277按钮,将数据返回到Excel,此时Excel窗口中将弹出【导入数据】对话框,单击【数据透视表】单选钮并指定【数据的放置位置】为现有工作表的“$A$3”,单击【确定】按钮生成数据透视表,如图20-45所示。

img457a

图20-45 将数据返回到Excel

步 骤8img01

将【数据透视表字段列表】中的“打卡日期”、“姓名”、“打卡时间”和“计数项:打卡时间”字段拖动至【在以下区间拖动字段】的相关区域中,完成数据透视表的创建,如图20-46所示。

img457b

图20-46 员工不重复打卡次数统计

利用Microsoft Query进行不重复数据查询后,打卡记录中的重复记录将不被计入统计,如员工“陈斌”的实际打卡次数应为2次,如图20-47所示。

img457c

图20-47 原始数据和不重复查询后的数据对比

本例通过利用“Microsoft Query”进行数据查询,并利用查询属性中“不选重复的记录”特性对原始数据进行筛选,最终得到满足用户需要的数据透视表。