深圳市泰达科技有限公司
新增产品
|
公司简介
注册时间:
2008-03-29
联系人:
电话:
Email:
首页
公司简介
产品目录
公司新闻
技术文章
资料下载
成功案例
人才招聘
荣誉证书
联系我们
产品目录
三菱低压电器
三菱伺服器
三菱触摸屏
三菱变频器
三菱PLC
CIMPLICITY
Historian
Portal
IFIX
当前位置:
首页
>>>
技术文章
>
技术文章
iFIX_excel报表实现的方法?
iFIX_excel报表实现的方法?
Private Sub CommandButton1_Click()
'注释: 1。该程序需要安装ADO 2.0目标库并在本机注册
' 2。Microsoft ActiveX DataObjects 2.1 Library 必须被引用 (Office 2000)
' 3。Microsoft Excel 9.0 objectlibraries 必须被引用 (Office 2000)
' 4。划===处可根据具体报表修改
Dim strQueryAvg As String
Dim c As Integer
Dim r As Integer
Dim Intyexcel As Excel.Application
Dim MyDate, MyMonth, MyDay, MyHour, MyMinute,MySecond
Dim StartTime, EndTime, Duration, DisplayDay,DisplayMonth As String
'++===================================================================
'报表中的 TAG
Dim Tag1, Tag2, Tag3, Tag4, Tag5, Tag6, Tag7, Tag8 AsString
Dim Items As Integer
Tag1 = "TEST"
Tag2 = "TEST1"
Tag3 = " "
Tag4 = " "
Tag5 = " "
Tag6 = " "
Tag7 = " "
Tag8 = " "
'从历史库中取得域项, 2 - DATATIME, VALUE, TAG 共三项
Items = 2
'--====================================================================
MyDate = Now()
MyMonth = Month(MyDate)
MyDay = Day(MyDate)
MyHour = Hour(MyDate)
MyMinute = Minute(MyDate)
MySecond = Second(MyDate)
StartTime = "2000" & "-" & MyMonth & "-"& MyDay - 1 & " " & "00:00:00"
EndTime = "2000" & "-" & MyMonth & "-"& MyDay - 1 & " " & "23:00:00"
'++==========================================================================
'查询,根据报表修改
strQueryAvg = "Select DATETIME, VALUE, TAG FROM FIX "& _
"WHERE MODE = 'AVERAGE' and (TAG='"& Tag1 & "' or TAG='" & Tag2 & "'" & _
" or TAG='" & Tag3 & "' orTAG='" & Tag4 & "' or TAG='" & Tag5 & "'" &_
" or TAG='" & Tag6 & "' orTAG='" & Tag7 & "' or TAG='" & Tag8 & "')" &_
"and INTERVAL = '01:00:00' and " &_
"(DATETIME >= {ts '" & StartTime& "'} and " & _
"DATETIME <= {ts '" & EndTime& "'})"
'--===========================================================================
Dim cnADO As New ADODB.Connection
Dim rsADO As Recordset
Set cnADO = New ADODB.Connection
cnADO.ConnectionString = "DSN = FIX DynamicsHistorical Data; UID = sa; PWD = ;"
cnADO.Open "FIX Dynamics Historical Data", "sa",""
Set rsADO = New ADODB.Recordset
rsADO.Open strQueryAvg, cnADO, adOpenForwardOnly,adLockBatchOptimistic
'''如果执行上面的语句出错的话,则*大的可能性就是SQL语句有错误!
r = 1
Set Intyexcel = New Excel.Application
Intyexcel.Visible = False
'++============================================================================
'打开的报表文件名
Dim OutReportFile As String
Dim InReportFile As String
InReportFile = "C:\Dynamics\App\HIST1"
Intyexcel.Workbooks.Open InReportFile &".XLS"
Intyexcel.Sheets("Sheet2").Select
Intyexcel.Columns("A:Z").Select
Intyexcel.Selection.ClearContents
Intyexcel.Range("A1").Select
While rsADO.EOF <> True
With Intyexcel.Worksheets(2)
For c = 0 To Items
If rsADO(c)<> "" Then .Cells(r, c + 1).Value = rsADO(c)
Next c
r = r + 1
rsADO.MoveNext
End With
Wend
Intyexcel.Sheets("Sheet1").Select
' Intyexcel.ActiveSheet.PageSetup.Orientation =xlPortrait 'xlLandscape
' Intyexcel.ActiveSheet.PageSetup.PaperSize =xlPaperA4
Intyexcel.ActiveSheet.PrintOut
Intyexcel.DisplayAlerts = False
Intyexcel.ActiveWorkbook.Save
OutReportFile = InReportFile & "_00" &MyMonth & MyDay
Intyexcel.ActiveWorkbook.SaveAs OutReportFile
Intyexcel.Quit
Intyexcel.DisplayAlerts = True
Set Intyexcel = Nothing
Set cnADO = Nothing
End Sub
上一篇:
暂无
下一篇:
IFIX与EXCEL的连接
若网站内容侵犯到您的权益,请通过网站上的联系方式及时联系我们修改或删除