关键词不能为空

当前您在: 主页 > 高中公式大全 >

出口税公式Excel2010日期函数的加减怎么做

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2020-10-04 15:43
tags:日期减日期的公式

烘焙学校学费是多少钱-休戚相关

2020年10月4日发(作者:金广藏)


Excel2010日期函数的加减怎么做
篇一:Excel时间加减函数TMC
Function TMC(time_text, minu)








'时间格式:2012-1-11 16:28:14
Dim t2, t3, t4, y, m, d, zong_miao, miao1, miao2, shi, fen, miao, shi1, fen1, miao3 Dim t1, m1
Dim flag1 As Boolean
Dim flag2 As Boolean
t1 = time_text
m1 = -minu
flag1 = False
flag2 = False
If IsNumeric(m1) Then
flag2 = True
End If
If IsDate(t1) Then
flag1 = True
End If
If t1 =
TMC =
Exit Function
End If
y = Year(t1)
m = Month(t1)
d = Day(t1)
shi = Hour(t1)
fen = Minute(t1)
miao = Second(t1)
If shi = 0 Then
shi = 24
End If
zong_miao = shi * 3600 + fen * 60 + miao
miao1 = m1 * 60
miao2 = zong_miao - miao1
shi1 = Int(miao2 3600)
1 8
fen1 = Int((miao2 - shi1 * 3600) 60)
miao3 = miao2 - shi1 * 3600 - fen1 * 60
If shi1 >= 24 Then
n = Int(shi1 24)
shi1 = shi1 - n * 24
d = d + n
End If
If m = 1 Or m = 3 Or m = 5 Or m = 7 Or m = 8 Or m = 10 Or m = 12 ThenIf d > 31 Then
m = m + Int(d 31)
d = d Mod 31
End If
ElseIf m = 1 Or m = 3 Or m = 5 Or m = 7 Or m = 8 Or m = 10 Or m = 12 ThenIf d > 30 Then
m = m + Int(d 31)
d = d Mod 30
End If
ElseIf m = 2 Then
If y Mod 4 = 0 And y Mod 100 = 0 And y Mod 400 = 0 Then
If d > 29 Then
m = m + Int(d 31)
d = d Mod 29
End If
Else
If d > 28 Then
m = m + Int(d 31)
d = d Mod 28
End If
End If
End If
If m > 12 Then
y = y + Int(m 12)
m = m Mod 12
End If
If Len(shi1) shi1 =
End If
If Len(fen1) fen1 =
End If
If Len(miao3) miao3 =
End If
2 8
If shi = 24 And shi1 d = d - 1
If d If m = 5 Or m = 7 Or m = 8 Or m = 10 Or m = 12 Then
d = 30
m = m - 1
ElseIf m = 4 Or m = 2 Or m = 6 Or m = 8 Or m = 9 Or m = 11 Or m = 1 Thend = 31
m = m - 1
ElseIf m = 3 Then
If y Mod 4 = 0 And y Mod 100 = 0 And y Mod 400 = 0 Then
d = 29
m = m - 1
Else
d = 28
m = m - 1
End If
End If
End If
If m m = 12
y = y - 1
End If
End If
If m m =
End If
If d d =
End If
t2 = y &
t3 = shi1 &
t4 = t2 & t3
TMC = t4
End Function
篇二:Excel 日期常用函数
VBA日期的加减函数:DateAdd 函数
返回包含一个日期的 Variant (Date),这一日期还加上了一段时间间隔。 语法
DateAdd(interval, number, date)DateAdd 函数语法中有下列命名参数: 部分
描述
interval 必要。字符串表达式,是所要加上去的时间间隔。 number date设置
必要。数值 表达式,是要加上的时间间隔的数目。其数值可以为正数(得到未来的日期),
也可以为负数(得到过去 的日期)。 必要。Variant (Date) 或表示日期的文字,这一日期还加
上了时间间隔。
3 8
interval 参数具有以下设定值: 设置 yyyy 年 q m y d w ww h n
季 月
一年的日数 日
一周的日数 周 时 分钟
描述
s说明

可以使用 DateAdd 函数对日期加上或减去指定的时间间隔。例如,可以用 DateAdd 来
计算距今天为三十天的日期;或者计算距现在为 45 分钟的时间。 为了对 date 加上“日”,
可以使用“一年的日数” (“y”),“日” (”d”) 或“一周的日数” (”w”)。
DateAdd 函数将不返回有效日期。在以下实例中将 1 月31 日加上一个月: DateAdd(m,
1, 31-Jan-95)
上例中,DateAdd 返回 1995 年 2 月 28 日,而不是 1995 年 2 月 31 日。如果 date
是 1996 年 1 月 31 日,则由于 1996 年是闰年,返回值是 1996 年 2 月 29 日。
如果计算的日期超前 100 年(减去的年度超过 date 中的年份),就会导致错误发生。
如果 number 不是一个 Long 值,则在计算时取最接近的整数值来计算。 注意DateAdd
返回值的格式由 Control Panel设置决定,而不是由传递到date 参数的格式决定。
DateAdd 函数示例
本示例先取得一个日期,再用 DateAdd 函数显示未来数月后的日期。Dim FirstDate As
Date ' 声明变量。 Dim IntervalType As String Dim Number As Integer Dim Msg
IntervalType = 指定以“月份”作为间隔。 FirstDate = InputBox(
Number = InputBox(
Msg =
DATEDIF
计算两个日期之间的天数、月数或年数。提供此函数是为了与 Lotus 1-2-3 兼容。
语法
DATEDIF(start_date,end_date,unit)
Start_date 为一个日期,它代表时间段内的第一个日期或起始日期。日期有多种输入方法:
带引号的文本串(例如 )、系列数(例如,如果使用 1900 日期系统则 36921 代
表 2001 年 1 月 30 日)或其他公式或函数的结果(例如,DATEVALUE()。有
关日期系列数的详细信息,请参阅 NOW。
End_date 为一个日期,它代表时间段内的最后一个日期或结束日期。
Unit 为所需信息的返回类型。
Unit 返回
时间段中的整年数。 时间段中的整月数。 时间段中的天数。
与 end_date 日期中天数的差。忽略日期中的月和年。
与 end_date 日期中月数的差。忽略日期中的日和年。 与 end_date 日期中天
数的差。忽略日期中的年。
4 8
说明
Microsoft Excel 按顺序的系列数保存日期,这样就可以对其进行计算。如果工作簿使用
1900 日期系统,则 Excel 会将 1900 年 1 月 1 日保存为系列数 1。而如果工作簿使用 1904
日期系统,则 Excel 会将 1904 年 1 月 1 日保存为系列数 0,(而将 1904 年 1 月 2 日
保存为系列数 1)。例如,在 1900 日期系统中 Excel 将 1998 年 1 月 1 日保存为系列数
35796,因为该日期距离 1900 年 1 月 1 日为 35795
天。请查阅 Microsoft Excel 如何存储日期和时间。
Excel for Windows 和 Excel for Macintosh 使用不同的默认日期系统。有关详细信息,请
参阅 NOW。
示例
DATEDIF(等于 2,即时间段中有两个整年。
DATEDIF(等于 440,即在 2001 年 6 月 1
日和 2002 年 8 月 15 日之间
有 440 天。
DATEDIF(等于 75,即在 6 月 1 日与 8 月 15 日之间有
75 天,忽略日
期中的年。
DATEDIF(等于 14,即开始日期 1 和结束日期 15 之间的
差,忽略日期中
的年和月。
纵观Excel日期函数对日期的运算规则得出以下理解(比如Edate、Da tedif等都是遵循这
个规则的):先理解“月末”——指某月的最后一天再理解“整月”即不是按3 0天也不是
按29天等来算,这个是一个变动的概念。
——由m月d日至 m+1月d日,若m+1月没有d日,则取m+1月的“月末”算一个“整月”。
反之,倒推
回来,由m月d日至m-1月d日,若m-1月没有d日,则取m-1月的月末算一个“整月”
例子:2006-1-28~31日,往后推1个月得到的都是2-28,其中2006-1-2 8遵循了m+1=2
月d=28日的规则,而2006-1-29~31则遵循了“取月末”的规则,即 因为2006年的m+1=2月没
有29、30、31日,则取其月末。用=Edate(star_d ate,1)验证上述规则;用
Datedif(star_date,同样能验证这个规则。即从20 06-1-28~31日至2006-2-28的
Datedif(??,——都算1个“整月”。 Private Function getFirstDayOfMonth(ByVal D As Date) As
DategetFirstDayOfMonth = CDate(Year(D) &
'获取给定日期的当月最后一天
Private Function getLastDayOfMonth(ByVal D As Date) As DateDim dteFirstDayOfNextMonth
As Date
dteFirstDayOfNextMonth = DateAdd(1, getFirstDayOfMonth(D))getLastDayOfMonth =
DateAdd(
'获取给定日期的当年第一天
5 8
Private Function getFirstDayOfYear(ByVal D As Date) As DategetFirstDayOfYear = CDate(Year(D)
&
'获取给定日期的当年最后一天
Private Function getLastDayOfYear(ByVal D As Date) As DategetLastDayOfYear =
CDate(Year(D) & 本月第一天星期几
[A22].Value = Weekday([A21])b = [A22].ValueSelect Case b
Case vbSunday


















[A23] = Year([B19]) & 年月1日是星期日
[A23] = Year([B19]) & 年月1日是星期一
[A23] = Year([B19]) & 年月1日是星期二
[A23] = Year([B19]) & 年月1日是星期三
[A23] = Year([B19]) & 年月1日是星期四
[A23] = Year([B19]) & 年月1日是星期五
[A23] = Year([B19]) & 年月1日是星期六
'得到本月第一周周一的日期
Select Case b Case vbSunday [B21].Value = DateAdd(
[B21].Value = DateAdd(9 - b, [A21]) 使用 DatePart(Date()) 来返回周 DatePart
函数
返回一个包含已知日期的指定时间部分的 Variant (Integer)。 语法
DatePart(interval, date[,firstdayofweek[, firstweekofyear]]) DatePart 函数语法中有下列命
名参数:
篇三:各种日期格式的转换公式
excel常用函数公式大全:各种日期格式的转换公式 (2012-11-15 11:18:01)
转载▼



6 8
7 8



8 8

白城师范学院地址-2019四级查询入口


26个字母怎么读-行业分析师


为的偏旁部首是什么-山居秋瞑


间至赵矣的间什么意思-凯里学院官网


容易疲劳犯困是什么原因-云南农业职业技术学院


大学分数线-1斤等于多少kg


子衿是什么意思-元宵节诗歌


中央戏剧学院分数线-早餐营养



本文更新与2020-10-04 15:43,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/409769.html

Excel2010日期函数的加减怎么做的相关文章