Vbscript HP UFT-如何从两个输入日期获取日期范围

Vbscript HP UFT-如何从两个输入日期获取日期范围,vbscript,hp-uft,Vbscript,Hp Uft,我试图从两个输入日期中获取日期范围,例如:“2016年10月1日”和“2016年10月5日”(SAP中的日期格式) 我认为日期格式是错误的,如果它是错误的,谁能帮助我如何转换为可接受的格式 此外,我还尝试获取两个日期之间的所有日期,包括限制,并将其用于自动化。如果有人知道如何获取所有日期,请在这方面帮助我。DD.MM.YYYY是SAP总部所在地德国使用的日期格式。如果您使用的是正确的语言环境,那么您应该能够通过直接将日期字符串转换为日期 如果这对您不起作用(因为您的区域设置不同),您可以例如在点

我试图从两个输入日期中获取日期范围,例如:“2016年10月1日”和“2016年10月5日”(SAP中的日期格式)

我认为日期格式是错误的,如果它是错误的,谁能帮助我如何转换为可接受的格式


此外,我还尝试获取两个日期之间的所有日期,包括限制,并将其用于自动化。如果有人知道如何获取所有日期,请在这方面帮助我。

DD.MM.YYYY
是SAP总部所在地德国使用的日期格式。如果您使用的是正确的语言环境,那么您应该能够通过直接将日期字符串转换为日期

如果这对您不起作用(因为您的区域设置不同),您可以例如在点处拆分字符串,并通过以下方式从片段构建日期:

将字符串转换为日期值后,可以通过从另一个日期中减去一个来计算两个日期之间的差值

delta = d2 - d1
或使用以下功能:

delta = DateDiff("d", d1, d2)
例如,可以这样计算从
d1
d2
的各个日期:

For i=0 To DateDiff("d", d1, d2)
  WScript.Echo d1+i
Next

Dim newdate:newdate=Replace(inputdate,“.”,“/”
然后可以使用
CDate()
将其转换为正确的日期。谢谢Lankyart。您知道如何获取两个日期之间的所有日期范围吗?取决于您要执行的操作
DateDiff()
允许您比较两个日期并返回它们之间的“间隔”,可以是天、月、年等。但是,如果您想返回两个日期之间的日期列表,则需要使用
do
循环和
DateAdd()
将开始日期增加1天,并持续检查循环中是否达到结束日期,同时输出中间的日期。理想情况下,尽管您需要向我们表明,您至少已经通过提供一个。如果不清楚,请在发布前阅读。
s=“01.10.2016”:l=SetLocale(1031):d=CDate(s):SetLocale l
将输入格式中带有日期的字符串转换为日期类型。1031是德国的地方节。谢谢安斯加。了解datediff和DateSerial对我很有帮助。DateSerial是一种很好的方法。它使脚本,机器语言环境不可知。
delta = DateDiff("d", d1, d2)
For i=0 To DateDiff("d", d1, d2)
  WScript.Echo d1+i
Next