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,有好多不懂的地方,请多指教,谢谢.
产品版区:SIMATIC WinCC
悬赏分:5 | 解决时间:2008-11-05 13:46:23 | 提问者: 小飞1 - 资深学长  第3级
最佳答案
自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
回答者:
dcount107
-
顶级工程师  第12级
2008-10-24 17:58:41
提问者对于答案的评价:
很好,谢谢