excel计算年龄准确到几岁几月几天
发布时间:2023-12-13 05:51:46
一、符合如下的条件
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)
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)
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
以上代码是宏代码,在模块中使用。


猜你喜欢
- 有些公文什么的必须使用“仿宋GB2312”字体,然而目前使用的Word 2013中,用20号左右大小字体,加粗情况下会字体发虚,具体如下图所
- 如何使用支付宝积分兑换3.08基金账户?支付宝是一个移动支付平台,里面有很多便民的功能可供用户使用。最近听说支付宝积分可以兑换3.08基金了
- 不少网络朋友反馈安装的win8系统经常在运行一些程序的时候出现无响应的情况,导致只能重新启动电脑才得以解决,由于目前我们使用的windows
- found.000是指非法关机造成了文件的丢失,存放这些文件的文件夹。虽然某些情况下删除这些文件夹不会影响win7系统,但是会造成应用软件出
- 如何实现上下标同时输入?相信这个问题很多人都不能在第一时间回答出来。其实小编可以回答大家,下面小编为大家介绍如何实现上下标同时输入的方法。w
- 在Mac电脑上修改文件名很简单,但要修改大批量的文件名称却并不简单,这时候我们可以使用终端来完成这个工作,下面我们分享如何使用终端命令批量修
- 接触 iPhone 之后,自然免不了接触不少新名词,其中「OTA」几乎成为使用频率最高的名词,每当 iOS 系统更新推送时,很多地方都会提到
- Win7系统运行程序时,提示被防火墙阻止,该如何解决这个问题?有用户在Win7系统电脑上运行某些软件时,会遇到被防火墙阻止的情况,这时就需要
- 本文为大家介绍两种完美解决win7玩游戏不能全屏问题,建议优先使用方法一,方法二需要修改注册表,有一定风险操作前请注意备份好个人数据,下面一
- 虽然说Win7系统是一款比较旧的操作系统,不过还是有很多小伙伴因为其稳定性和兼容性还在使用,但对于一些电脑新手来说想要使用Win7系统却不知
- 很多使用win10系统的小伙伴经常会遇到下载文件的尴尬,但却找不到文件的位置。今天小编主要介绍微软edge的下载位置,电脑的默认下载位置,i
- 利用2013的快速填充功能搞定,注意向下拖拽的时候,按住鼠标右键。是右键!具体操作如下: 是不是很惊讶,原来这样就搞
- 在用微信的时候,不小心将微信好友给删除了,这要怎么办呢?微信删除的好友还可以恢复吗?可以的,接下来小编就来和大家介绍几种微信删除好友的恢复方
- 在用EXCEL中,我们常常用到函数,你知道该如何使用函数吗?不知道的朋友,今天,小编就教大家在Excel中进行对函数用法的详细讲解。Exce
- 金山的wps同样是一款不错的办公软件,而要想把txt中数据导入excel不需要从WPS应用程序中去转换。这里小编教大家一种通过wps表格数据
- 随着日常工作的增加,我们经常会用到金山文档,例如我们日常办公使用金山文档时,想将一些文档设置保护,不被修改,需要怎么操作?那么,我们一起学习
- wps表格设置横向打印的方法:文件-页面-设置选择横-确定-其他的页面应用范围根据实际情况选 就可以打印了。
- Win10 10176 RTM候选版上手视频曝光,Windows10 build 10176在中国泄露,它和之前推送给Windows Ins
- 自2020年1月14日起,微软宣布正式停止对win7系统的支持,未来win7系统不会安全修复和更新。继续使用win7系统将大大增加病毒和恶意
- 在Word2010公式中添加希腊字母符号的步骤详解第1步,打开Word2010文档窗口,单击需要添加希腊字母符号的公式使其处于编辑状态,并将