wincc 怎样向excel 的sheet2中写数据

wincc 默认向excel默认写的数据存在excel的sheet1中,怎样向excel 的sheet2中写数据呢?

问题补充:
dim iDataRow
 iDataRow = 0
 do while not rs.eof
  iDataRow = iDataRow +1
  oSheet.Range("A"&cstr(iDataRow)).Value = 100 ‘"A"&cstr(iDataRow)用于指定不同的行号
  rs.MoveNext
 loop 
 你的答案我试了可以在sheet2中写数据,只是在上一个数据的下一行写的时候不行
 请问一下 rs.eof中的 rs 在那个地方声明,具体是什么意思,由于刚学VBS,有好多不懂的地方,请多指教,谢谢.

最佳答案

DDE也是一种解决办法,现在用的人不多了吧。但仅限于数据交换,如欲实现报表之类的功能则DDE无能为力。

  自WinCC 支持VBS后,向EXCEL写数据要方便的很多。你的问题其实就是以下两个问题吧?
  1.数据要写入指定Sheet中
  dim oExcel,oWorkBook,oSheet
  set oExcel = CreateObject("Excel.Application")
  set oWorkBook = oExcel.WorkBooks.Open("xxx.xls")
  set oSheet = oWorkBook.Sheets("Sheet2") ‘此处指定表单名称
  oSheet.Range("A1").Value = 100 ‘对指定表单进行操作
  ‘………

  2.写入数据时,要能自动判断写入的位置(比如在上一个数据的下一行)
  dim iDataRow
  iDataRow = 0
  do while not rs.eof
   iDataRow = iDataRow +1
   oSheet.Range("A"&cstr(iDataRow)).Value = 100 ‘"A"&cstr(iDataRow)用于指定不同的行号
   rs.MoveNext
  loop

 补充;我只是用rs举了个例子,rs是ADODB.RECORDSET,你没有用数据库当然不行,哈哈;干脆用for算了;
 dim iDataRow
 for iDataRow =1 to 10
  oSheet.Range("A"&cstr(iDataRow)).Value = 100 ‘"A"&cstr(iDataRow)用于指定不同的行号
 NEXT
 

提问者对于答案的评价:
很好,谢谢
 

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc275784.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日
下一篇 2019年6月11日

相关推荐