1岁以上写岁
1月以上写月,
不足月写天。
二、宏代码
Function GetDateDiff(StartD, EndD)
Dim y%, m%, d%
If StartD > EndD Or Not IsDate(StartD) Or Not IsDate(EndD) T...
一、符合如下的条件
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)
excel中的LOG语法及使用实例
excel中的LOG语法及使用实例 一、LOG语法 LOG(number,base) 参数说明 Number 为用于计算对数的正实数。 Base 为对数的底数。如果省略底数,假定其值为10。 二、LOG函数用法 A B 公式 说明(结果) 1、=LOG(10) 10 的对数 (1) 2、=LOG(8, 2) 以 2 为底时,8 的对数 (3) 3、=LOG(86, 2.7182818) 以 e 为底时,86 的对数 (4.454347)
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
以上代码是宏代码,在模块中使用。
Excel之Char.Chr.Chrw函数的使用范围及实例
Excel之Char.Chr.Chrw函数的使用范围及实例 Char、Chr、Chrw三个函数的功能:三个函数均以字符代码为参数,返回与代码相对应的字符。 一、Char函数可以在公式中使用 其中Char函数为工作表函数,可以在Excel公式中使用,可以返回ASCII码所对应的字符,参数范围为1~255,例如Char(65)=