比较来自不同工作表的两列和匹配值

我的项目的目标是创build一个不在办公室的程序,这将允许对Sharepoint网站进行简单的跟踪和审计,因为它没有内置的系统。 我在VBA中没有背景,但是我做了相当多的Python。 这就是说我遇到了我的第一个问题。 我不确定语法是如何工作的,以及我应该使用什么命令来获得我想要的结果。 即工作表vs工作表vs工作表。

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

资源名称 – 缺席types – ID – 开始时间 – 结束时间 – 创build – 修改

我有下一张表正在跟踪,这就是所谓的跟踪。 在这个页面上,用户将他们想要跟踪的资源名称input到列A中,然后剩下的列将显示名称所具有的缺席数量,所以它看起来像

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

克鲁尼,乔治 – 2 – 0 – 7

计数器将根据原始数据中出现的每个实例运行,并根据原始数据的缺失types将计数添加到计数器。

我需要一种方法来循环原始数据并查找出现在跟踪数据中的名称。 如果可能的话,我想将它们存储在第三个工作表jsut进行testing。 我知道我需要使用的逻辑,但是我不知道的是将这些页面合并在一起的语法。 任何洞察力的最佳途径来完成这个?

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

如果您不想使用数据透视表(稍后可能难以search),则可以使用COUNTIFS来执行此操作。 这个公式出现在第2行的Tracking(生病)列中(假设第1行是标题)。

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

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

我理解你的问题的方式(这并不容易),你正在处理一堆时间表信息。 你似乎试图计算人们正在采取的不同种类的休假时间的数量 – 无论是假期,生病还是在家工作(WFH)。

我从来没有听说过某人的名字被称为“资源名称”哈哈。

你真的不需要使用VBA来解决这个问题 – 至less不能使用VBA来logging一个macros – 这似乎是一个相当简单的问题,你可以使用数据透视表来解决这个问题。

数据透视表示例

如果你想要,你可以设置一个对这个数据透视表的vlookup引用来创build你似乎正在创build的小表单。 但是,我真的觉得你最好的方法就是教谁打算使用这个数据透视表的人。 让我知道如果我误解了你的问题,我很乐意删除这个职位。