excel计算年龄准确到几岁几月几天

zhusony1983

zhusony1983

2016-02-19 17:04

下面请跟着图老师小编一起来了解下excel计算年龄准确到几岁几月几天,精心挑选的内容希望大家喜欢,不要忘记点个赞哦!

一、符合如下的条件

1岁以上写岁

1月以上写月,

不足月写天。

二、宏代码

Function GetDateDiff(StartD, EndD)

Dim y%, m%, d%

If StartD EndD Or Not IsDate(StartD) Or Not IsDate(EndD) Then GetDateDiff = "数据有误"

y = DateDiff("yyyy", StartD, EndD)

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/diannaorumen/)

If DateSerial(Year(EndD), Month(StartD), Day(StartD)) EndD Then

y = y - 1

If y = 1 Then GoTo 100

m = 12 - Month(StartD) + Month(EndD)

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/diannaorumen/)

Else

m = Month(EndD) - Month(StartD)

End If

If Day(EndD) = Day(StartD) Or Day(EndD) = Day(DateSerial(Year(EndD), Month(EndD) + 1, 0)) Then

If Day(EndD) = Day(StartD) Then d = Day(EndD) - Day(StartD)

If Day(EndD) Day(StartD) And Day(EndD) = Day(DateSerial(Year(EndD), Month(EndD) + 1, 0)) Then d = Day(DateSerial(Year(StartD), Month(StartD) + 1, 0)) - Day(StartD)

Else

m = m - 1

d = Day(DateSerial(Year(StartD), Month(StartD) + 1, 0)) - Day(StartD) + Day(EndD)

End If

If m = 1 Then d = 0

100: GetDateDiff = IIf(y 0, y & "岁", IIf(m 0, m & "月", d & "天"))

End Function

Sub Get年月日()

Dim arr1, arr2()

arr = Sheet1.Range("a2:b" & Sheet1.Range("A65536").End(xlUp).Row)

ReDim arr2(1 To UBound(arr), 1 To 1)

For i = 1 To UBound(arr)

arr2(i, 1) = GetDateDiff(arr(i, 1), arr(i, 2))

Next i

Sheet1.Range("C2:c" & Sheet1.Range("A65536").End(xlUp).Row) = arr2

End Sub

以上代码是宏代码,在模块中使用。

展开更多 50%)
分享

猜你喜欢

excel计算年龄准确到几岁几月几天

电脑入门
excel计算年龄准确到几岁几月几天

青春期是几岁到几岁

生活常识
青春期是几岁到几岁

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

白羊座是几月到几月

白羊座 十二星座
白羊座是几月到几月

怎样准确计算受孕时间

电脑网络
怎样准确计算受孕时间

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

双子座是几月到几月?

双子座 十二星座
双子座是几月到几月?

给孩子补钙到几岁?

补钙 育儿知识 怀孕 孕妇
给孩子补钙到几岁?

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

java_util_test

java_util_test

组策略怎么打开

组策略怎么打开
下拉加载更多内容 ↓