比较两列并匹配单独工作表中的值

时间:2012-07-24 18:07:14

标签: excel vba excel-vba excel-2007

我的项目的目标是创建一个外出程序,以便轻松跟踪和审核我们的Sharepoint站点,因为它没有内置系统。我没有VBA的背景,但我做了很多python。话虽如此,我已经遇到了第一期。我不确定语法是如何工作的,以及我应该用什么命令来获得我想要的结果。即sheet vs worksheet vs worksheets。

我有一个工作簿,1张是原始数据,我在其中从sharpoint站点导入数据。它显示以下列

资源名称 - 缺勤类型 - ID - 开始时间 - 结束时间 - 创建 - 修改

我的下一张图片是跟踪,它叫做跟踪。在此页面上,用户将他们想要跟踪的资源名称输入到A列,然后selfign列将显示名称所具有的缺席数,因此它看起来像

资源名称 - 假期 - 生病 - WFH

Clooney,George - 2 - 0 - 7

计数器将根据原始数据中显示的每个实例运行,并根据原始数据中的缺席类型将数字添加到计数器。

我需要一种循环原始数据的方法,并查找跟踪数据中显示的名称。如果可能的话,我想将它们存储在第三个工作表jsut中以进行测试。我知道我需要使用的逻辑,但我不知道的是将页面一起引用的语法。有关实现这一目标的最佳方法的任何见解?

问题:我需要搜索每个实例的原始数据资源名称从“跟踪”页面显示在其中并存储到另一个工作表中。

2 个答案:

答案 0 :(得分:1)

如果您不想使用数据透视表(以后可能很难搜索),这是使用COUNTIFS执行此操作的方法。此公式位于第2行跟踪的“病态”列中(假设第1行是标题)。

=COUNTIFS('Raw Data'!A:A,Tracking!A2,'Raw Data'!B:B,"Sick")

它假设原始数据名称在A列中,而AbsenceType在B列中,但是有多少记录并不重要。

答案 1 :(得分:0)

我理解你的问题的方式(并不容易),你正在处理一堆时间表信息。你似乎在试图计算人们正在服用的不同时间的实例数 - 无论是度假,生病或在家工作(WFH)。

我从未听过某人的名字被称为“资源名称”大声笑。

你真的不需要使用VBA来解决这个问题 - 至少不是你不能只记录宏的任何东西 - 这似乎是一个相当简单的问题,你可以使用数据透视表解决。

Pivot Table Example

如果您愿意,可以设置对此数据透视表的vlookup引用,以创建您似乎尝试创建的小表单。但是我觉得你最好只教导那些将要使用这个关于数据透视表的人。如果我误解了您的问题,请告诉我,我很乐意删除此帖。