wincc全局脚本不执行
郑志武
发布于2013-01-07 16:16
29
0
标签:
对vb脚本不熟悉,想做报表就找了个模版改了改,在vb上用点击事件可以实现,但用到wincc的全局脚本中,用10s定时进行触发,可是运行后没反应(全局脚本运行已勾选)。脚本如下:
strdatetime=format(now(),"yyyy-mm-ddhh:mm:ss")
strdate=left(strdatetime,10)
strhour=right(left(strdatetime,13),2)&":00"
strminute=right(left(strdatetime,16),2)
irow=right(left(strdatetime,16),2)
setfs=createobject("scripting.filesystemobject")
iscreate=fs.fileexists("c:cyzdayreport"&strdate&".xls")
setfs=nothing
ifiscreatethen
strtemplatename=("c:cyzdayreport"&strdate&".xls")
else
strtemplatename="c:cyzmobandaymoban.xlt"
endif
setm*cel=createobject("excel.application")
withm*cel
.visible=false
.workbooks.openstrtemplatename,,false
.activeworkbook.activesheet.select
.displayalerts=false
.wait(now()+0.00002)
endwith
m*cel.worksheets(1).cells(irow+2,2).value=strdate
m*cel.worksheets(1).cells(irow+2,3).value=strhour
m*cel.worksheets(1).cells(irow+2,9).value=("ai6")
m*cel.worksheets(1).cells(irow+2,10).value=("ai7")
m*cel.worksheets(1).cells(irow+2,11).value=("ai8")
m*cel.worksheets(1).cells(irow+2,12).value=("ai9")
m*cel.activeworkbook.saveas("c:cyzdayreport"&strdate&".xls")
m*cel.quit
m*cel.displayalerts=true
setm*cel=nothing
问题补充:
因为是在做测试,所以想10s触发一次,写数就是随便写的行数,主要问题是不进行创建excel表。
佳答案
vbs脚本,如果执行出错后续的指令不会被执行
vbs里没有format函数,所有出错,vbs里有一个格式化日期时间的函数formatdatetime,可把行换成
strdatetime=formatdatetime(now(),0)
在控制面板里区域与语言选项修改时间日期的格式即可