【发布时间】:2019-04-15 22:38:09
【问题描述】:
我有一个正在处理的大文件,需要能够计算人们的出生日期。我在这里附上了一个示例文件以获得一个想法....但基本上我要做的是仅当“DOB”列中存在数据时,才能计算“年龄”。
DOB 将在每隔一列列出最多 18 个不同的人(所以列 A、C、E .....)在列 B、D、F ......我希望有年龄以年计算。
问题是,不会总是有 18 人的数据,所以这仅需要计算 DOB 列中是否存在数据。
理想情况下,这将是我在打开文件时运行的宏,以便所有年龄都可以更新。
我该怎么做这样的事情?
我希望输出只显示年龄......所以如果 DOB 是 01/01/2001 - 年龄将显示为 18
【问题讨论】:
-
你有什么理由不只使用公式吗?
-
我没有看到你提到的附件。
-
如果您尝试使用 VBA,发布您尝试过的代码并描述您遇到的确切问题总是很有用的。
-
VBA 对此可能是矫枉过正。一个简单的公式就可以了,所以如果起始单元格是 A2,那么
IF(OFFSET(A2,0,1) <> "",DAYS(TODAY(),OFFSET(A2,0,1)) / 365, "")也可以改进