2014-10-01 83 views
2

我从这里线程DateDiff in days, hours and minsVBScript函数语法错误

但我上的第一行代码得到一个语法错误解除了下面的代码,我不明白为什么,因为它看起来是一样的作为我写的其他函数语法,工作正常。

Function TimeSpan(dt1, dt2) 

     seconds = Abs(DateDiff("S",dt1, dt2)) 
     minutes = seconds \ 60 
     hours = minutes \ 60 
     minutes = minutes mod 60 
     seconds = seconds mod 60 

     if len(hours) = 1 then hours = "0" & hours 

     TimeSpan = hours & ":" & _ 
      RIGHT("00" & minutes, 2) & ":" & _ 
      RIGHT("00" & seconds, 2) 

End Function 

dt1 = ActiveRequest.Fields("CreationDate").Value 
dt2 = ActiveRequest.Fields("1stcontactdatetime").Value 

我收到的错误是: “错误在控制脚本位于第1行:语法错误(微软VBScript编译错误):FuntionTimeSpan(DT1,DT2)”

任何意见,将不胜感激,尤其是如果它帮助我不要再做一次!

+1

您使用的是哪种脚本主机? – Bond 2014-10-01 12:47:42

+1

@Bond 我已经运行下面 '代码MSGBOX(的ScriptEngine) MSGBOX(ScriptEngineBuildVersion) MSGBOX(ScriptEngineMajorVersion) MSGBOX(ScriptEngineMinorVersion) code' 我接收到下面的VBScript,17280,5,8 相信它适用于Windows脚本主机 – Peter 2014-10-01 13:16:46

+0

好的,所以你使用WSH?它是VBS文件还是WSF?您的代码是包含在单个文件中还是使用脚本组件? “控制脚本中的错误”并不是我经常见到的。 – Bond 2014-10-01 13:32:47

回答

1

使它成为一个子类或定义一个返回变量。

虽然我的vbscript引擎不介意你的代码。

您可能正在使用msscript.ocx(MS脚本控制),它在应用程序中运行vbscripts。可能是system32中的帮助文件。

Timespan是.NET框架中的一个类。

最后一点是如果使用编辑控制框,正如记事本和对话框所做的那样,您会遇到字符问题。粘贴到wordpad(基于richtext编辑控件),以便您可以检查格式编辑控件忽略。

在错误消息VBScript认为函数和函数名称之间没有空格。

+0

你会错的。 – Noodles 2014-10-02 15:06:34