WinCC、Excel、VBA、脚本、连通性软件包?

西门子有做个WinCC、Excel、VBA、脚本、连通性软件包的例子,也就是在EXCEL宏指令做日报表,现在测试通了,选择日期会有数据出来,关键是有两个问题:一是WINCC中变量数据是25.6,那么打开EXCEL的数据变成了25.0,EXCEL的单元格式也没错设置成1234.0,EXCEL中总是小数点后面的数据显示不出来是怎么回事?二是假设现在是上午整点10点开始运行WINCC并触发变量记录数据了,但是到EXCEL中变成了00点那一行数据,如图;以下是EXCEL的宏指令代码:
    Dim sPro, sDsn, sSer, sCon, sSql
    Dim conn, oRs, oCom
    Dim DSNName
    Dim i As Integer
    Dim sStart, sStop As String
    
Sub get_wincc_data()

    ‘–Get Database DSN name———————————–
    Set DSNName = CreateObject("CCHMIRuntime.HMIRuntime")
    sDsn = DSNName.Tags("@DatasourceNameRT").Read
    
    ‘–build connection string———————————–
    sPro = "Provider=WinCCOLEDBProvider.1;"
    sDsn = "Catalog=" & sDsn & ";"
    sSer = "Data Source=HH\WinCC"
    sCon = sPro & sDsn & sSer
    Set conn = CreateObject("ADODB.Connection")
    conn.ConnectionString = sCon
    conn.CursorLocation = 3
    conn.Open
    Set oRs = CreateObject("ADODB.Recordset")
    Set oCom = CreateObject("ADODB.Command")
    oCom.CommandType = 1
    Set oCom.ActiveConnection = conn
    
    ‘查询启止时间
    sStart = Year(DTPicker1.Value) & "-" & Month(DTPicker1.Value) & "-" & Day(DTPicker1.Value) & " 00:00:00"
    sStop = Year(DTPicker1.Value) & "-" & Month(DTPicker1.Value) & "-" & Day(DTPicker1.Value) & " 23:00:00"
    
    ‘转为UTC时间
     sStart = DateAdd("h", -8, CDate(sStart))
     sStop = DateAdd("h", -8, CDate(sStop))
     
    ‘读取Fan1_T1
     sSql = "Tag:R,(‘ProcessValueArchive\A’),’" & sStart & "’,’" & sStop & "’ order by datetime"
     oCom.CommandText = sSql
    Set oRs = oCom.Execute
    If (oRs.EOF) Then
       oRs.Close
    Else
        oRs.MoveFirst
        i = 0
        Do While Not oRs.EOF
        Sheet1.Cells(i + 4, 2) = oRs.Fields("RealValue").Value
        oRs.MoveNext
        i = i + 1
        Loop
        oRs.Close
    End If
   

    
   
    
Set oRs = Nothing
Set conn = Nothing
End Sub


Private Sub DTPicker1_Change()

clear_cell ‘清除已经填充的数据
get_wincc_data ‘读取WinCC历史数据

End Sub

 Sub clear_cell()
 For i = 4 To 27
  For j = 2 To 5
  Cells(i, j) = ""
  Next j
Next i
 End Sub

图片说明:

WinCC、Excel、VBA、脚本、连通性软件包?   

最佳答案

EXCEL中小数点后面的数据显示不出来的问题先检查一下WinCC中写到数据库中的数据、可以用历史趋势控件的表格显示,再就是Excel表格的格式。时间不对应的问题,看脚本中往Excel中写并未根据时间分配行号,而是按读取顺序写入,只读到一条就写到了第一行,不知是不是这个原因。

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

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

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

相关推荐

  • Wincc7.4 SP1 modbus tcp 读取智能仪表

    1.Wincc7.4 SP1 安装在虚拟机里面;2.原来已经通过网关(Modbus TCP 转RTU)(192.168.0.121),读取到…

    2021年7月5日
  • wincc7.0sp3的授权问题

    安装完了之后老是出这个,请问要怎么办 图片说明:    钻石用户推荐最佳答案 参考:WinCC7.0授权的使用方法及常见问题处理https://support.…

    2021年7月5日
  • wincc在宽屏显示器上如何实现满屏显示?

    wincc在宽屏显示器上如何实现满屏显示? 最佳答案 如果使用的宽屏分辨率为1280*800,可以将wincc显示画面的属性做相应的修改画面宽度设为1280,画面宽度设为800就可…

    SIMATIC WinCC 2019年6月11日
  • WINCC资料

    想学习WINCC组态软件,哪里有详细的讲解资料,谢谢 最佳答案 建议你先看看入门级的文档与教材——《深入浅出西门子WinCC V6视频教程(下载)》下载链接:http:/…

    SIMATIC WinCC 2017年12月8日
  • wincc 安装故障

    今天刚装的新系统,但在安装完step7之后,安装wincc flexible 2008 SP4时出现‘stop simatic n…

    SIMATIC WinCC 2017年10月31日
  • wincc5.1 如何连接sql server 数据库

    请问各位朋友,我现在想让wincc 5.1项目连接sqlserver 有办法连接?,还是转换成6.0版本为好,谢谢了!!! 问题补充:我想把wincc5.1实时…

    SIMATIC WinCC 2019年6月11日
  • 用WINCC打开标准对话框

    如题,我按组态手册中的例子编写程序 提示错误:不能找到#include 文件 commdlg.h 编译出错: 最佳答案 在"系统盘…

    SIMATIC WinCC 2019年6月11日
  • 触摸屏V3问题

    SIMATIC WinCC打开提示未安装服务’almservice 钻石用户推荐最佳答案 重置WinCC flexible软件 http:…

    SIMATIC WinCC 2020年11月1日
  • 我需要哪些授权

    我单位新上了一套西门子S7-200系统,安装的是STEP7软件,不知道STEP7软件是否必须有授权,组态软件是WINCC,WINCC软件运行时的授权一定要装在硬盘里吗?我是维护系统…

    SIMATIC WinCC 2019年6月11日
  • wincc归档调不出来

    机子上装了wincc6.0sp3和step7 5.4 为了给5613卡装驱动,安装了Simatic_NET_2006_v6.4,wincc授权齐全,step7授…

    SIMATIC WinCC 2021年7月5日