ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

搬家第五天-117.Wincc V7.3 ListView 控件初步使用10-数据导出到excel

2021-02-02 20:05:28  阅读:208  来源: 互联网

标签:控件 V7.3 excel LV RowCount range CStr Now objsheet


我们将数据装入ListView之后,有时需要导出到excel且有一定排版要求,这个也很好实现。假设画面上有一个ListView控件,名字叫做LV,已经装入了数据;有一个按钮用于执行数据导出到excel的操作,在按钮的鼠标点击事件添加以下vbs脚本:

Sub OnClick(ByVal Item)                           
Dim LV,i,j,RowCount,ColCount,Row,Col
Dim xlapp,objsheet,FileName
Set LV=ScreenItems("LV")
RowCount=LV.listitems.count 'LV的行数
ColCount=LV.ColumnHeaders.Count  'LV的列数
Set xlapp=CreateObject("Excel.Application")
xlapp.visible=False
xlapp.workbooks.add
Set objsheet=xlapp.worksheets(1)

'添加列标题
For i=2 To ColCount
 objsheet.cells(3,i-1)=LV.ColumnHeaders.Item(i).Text
Next

'报表标题
objsheet.cells(1,1)="用户归档表"
'Msgbox LV.ListItems.item(1).listsubitems.item(2)
'填充数据
For i=1 To RowCount   '行的序号是从1开始的
 For j=1 To ColCount-1 '列的序号是从0开始的
  Row=3+i
  Col=j
  'Msgbox LV.ListItems.item(i).listsubitems.item(j)
  objsheet.cells(Row,Col)=CStr(LV.ListItems.item(i).listsubitems.item(j))
  'objsheet.cells(4,1)=CStr(LV.ListItems.item(1).listsubitems.item(2))
 Next
Next
'单元格边框线
objsheet.range("a1:d1").mergecells=True '合并单元格
objsheet.range("b3").ColumnWidth =20
objsheet.range("c3").ColumnWidth =20
objsheet.cells(2,1)="生成时间:"
objsheet.cells(2,2)=Year(Now) & "年" & Month(Now) & "月" & Day(Now) & "日"
objsheet.cells(1,1).HorizontalAlignment = 3
objsheet.range("a3:d" & CStr(3+RowCount)).borders(1).linestyle=9
objsheet.range("a3:d" & CStr(3+RowCount)).borders(1).weight=2
objsheet.range("a3:d" & CStr(3+RowCount)).borders(2).linestyle=9
objsheet.range("a3:d" & CStr(3+RowCount)).borders(2).weight=2
objsheet.range("a3:d" & CStr(3+RowCount)).borders(3).linestyle=9
objsheet.range("a3:d" & CStr(3+RowCount)).borders(3).weight=2
objsheet.range("a3:d" & CStr(3+RowCount)).borders(4).linestyle=9
objsheet.range("a3:d" & CStr(3+RowCount)).borders(4).weight=2


'保存文件
filename= "c:\" & Year(Now) & "年" & Month(Now) & "月" & Day(Now) & "日-" & Hour(Now) & "点" & Minute(Now) & "分" & Second(Now) & "秒生成生产报表.xlsx"
xlapp.Activeworkbook.saveas (filename)
xlapp.workbooks.close
xlapp.quit
Msgbox "成功导出到C:\"

End Sub

标签:控件,V7.3,excel,LV,RowCount,range,CStr,Now,objsheet
来源: https://www.cnblogs.com/fishingsriver/p/14363868.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有