excel 中使用vba 实现时间的计算
我想通过vba将一个固定的时间例如:8:00生成一个比这个时间早1-20分钟的随机时间(需要用到随机函数)结果可能:7:45;0:00生成一个结果可能为23:58;写一个...
我想通过vba 将一个固定的时间例如:
8:00 生成一个比这个时间早1-20分钟的随机时间(需要用到随机函数) 结果可能:7:45 ; 0:00 生成一个结果可能为 23:58;
写一个 getTime(t as ***)的Function,以方便结果的生成;
将单元格内的值作为参数传递。
求给位大神赐教! 展开
8:00 生成一个比这个时间早1-20分钟的随机时间(需要用到随机函数) 结果可能:7:45 ; 0:00 生成一个结果可能为 23:58;
写一个 getTime(t as ***)的Function,以方便结果的生成;
将单元格内的值作为参数传递。
求给位大神赐教! 展开
2个回答
展开全部
Function gettime(t)
Randomize
If VBA.TypeName(t) = "String" Then tmp = TimeValue(t) Else tmp = t
gettime = Format(tmp - Rnd * 20 / 24 / 60, "hh:mm")
End Function
使用方法
=gettime("08:00")
或
=gettime($B$1)
(假设B1中填着08:00
Randomize
If VBA.TypeName(t) = "String" Then tmp = TimeValue(t) Else tmp = t
gettime = Format(tmp - Rnd * 20 / 24 / 60, "hh:mm")
End Function
使用方法
=gettime("08:00")
或
=gettime($B$1)
(假设B1中填着08:00
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
下面是例子代码:
Option Explicit
Sub test()
MsgBox getTime(#8:00:00 AM#)
End Sub
Function getTime(t As Date) As Date
getTime = t - Int(1 + Rnd * 19) / 60 / 24
End Function
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |