Excel,根据重复项更改值

Excel,根据重复项更改值

我在 Excel 中有 3 列填充了以前的数据。

A 列是员工姓名 [Jordan Smith]

B 列是某一天打卡的员工姓名,这不会添加到最终的电子表格中。只需更改 C 列中的日期即可。(每天都会更改)[Jordan Smith]

C 列是员工最后打卡的日期(可能是昨天、两天前等)[12/01/21]

我正在尝试改变C 栏根据某一天登录的员工 B 列。

如果 B 列中的名称与 A 列中的名称相同,则需要更改 C 列。

我知道有一种条件格式可以突出显示重复值(B 列和 A 列),但我需要根据重复值更改 C 列中的值。可能有一个非常简单的 IF 函数可以做到这一点,但我没有成功。

例如这里tldr:如果 B 列值 = A 列,则更改 C 列

答案1

好的,我重新说一下。你有发言权

John
James
Joe

然后在C中

12/01/22
13/02/22
05/02/22

意思是詹姆斯最后一次打卡是在 2022 年 2 月 13 日。

现在在 B 中,你有(今天)

James 
Joe

这意味着 C 必须更新到

12/01/22
02/03/22
02/03/22

明天你将编辑B列,而C列必须再次更新。

您需要在 D 中使用公式创建一个新列

 =IF(ISERROR(MATCH(A2,B2:B100,0)),C2,$F$2)

其中 F2 包含上次 B 列更新的日期。现在,每天在 B 中记录新数据或更改 F2 之前,复制并粘贴作为价值观将 D 中的所有日期转移到 C。现在更新 B 和 F2。

另一种方法是,您可以尝试 VBA 宏,并编写一个“更新上次打卡日期”按钮。然后,宏将执行公式部分(不需要 D 列)并更新 C 列中的静态“仅值”日期,只需单击一下即可。

答案2

添加辅助列并输入公式:

=IF(COUNTIF($B$2:$B$10,A2)=1,DATE(2002,2,2),"")

在此处输入图片描述

相关内容