我用VBS写的往EXCEL里面写数据的脚本程序奉献给大家 ,直接建立变量写就可以了,日期和时间脚本里面自带,先在D盘建立一个book1的EXCEL文件,在这个文件的SHEEL1里面的第一行合并单元格后写上表格的标题(如XX日报表)就可以拉,把此脚本写在VBS全局脚本里面并设置好时间触发器,就可以自动建立以日期命名的EXCEL文件,并自动向里面写数据。
Dim pExcel,sj
Dim shijian ,wendu,yali,liuliang
Dim i,FileName
Dim filena,fso
sj=Date()
shijian=Time
shijian=Mid(shijian,1,8)
FileName="d:\"&sj&".xls"
Set pExcel = CreateObject("Excel.Application")
Set fso = CreateObject("s cripting.FileSystemObject")
pExcel.Visible = 0
If fso.FileExists(FileName)=False Then
pExcel.Workbooks.Open"D:\book1.xls"
pExcel.ActiveWorkbook.SaveAs FileName
End If
pExcel.Workbooks.Open FileName
i=i+1
i=pExcel.WorkSheets("sheet1").Columns(1).Find("").Row
pExcel.worksheets ("sheet1").Cells(i, 1).VAlue =shijian
pExcel.worksheets ("sheet1").Cells(i, 2).VAlue = HMIRuntime.Tags("wendu").read
pExcel.worksheets ("sheet1").Cells(i, 3).VAlue = HMIRuntime.Tags("yali").read
pExcel.worksheets ("sheet1").Cells(i, 4).VAlue = HMIRuntime.Tags("liuliang").read
pExcel.ActiveWorkbook.Save()
pExcel.Workbooks.Close()
pExcel.Quit()
问题补充:
请大家帮忙看看,本人对VBS不懂,请高手把该建的变量,需要修改的地方指出来,多谢。其中i=pExcel.WorkSheets("sheet1").Columns(1).Find("").Row这句中("")中应该填写什么东西吗?还要"wendu""yali""liuliang"等都需要建变量吗?还有他的时间怎么来的?
最佳答案
find("") 应该是寻找 空值的那一行 赋值给i 应该不用填啥。 wendu yali liuliag 是wincc 中的变量需要建立,时间写的很清楚, sj=date() 赋值时间 FileName="d:\"&sj&".xls" 赋值时间给文件名 ,pExcel.ActiveWorkbook.SaveAs FileName 用 filename 保存 文件 这样就得到了时间名称的文件名
提问者对于答案的评价:
谢谢
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc267934.html