Tôi có 1 hàm CiVBA như sau. Hàm này ghi 1 chuỗi vào ô A1 của 1 file Excel chỉ định trước.
Sub WriteToExcelFile()
Dim sTapTinExcel As String
sTapTinExcel = "E:\PLC\Citect SCADA\Report.xls"
Dim objExcelApp As Object
Set objExcelApp = CreateObject("Excel.Application")
'Open file
Dim objBook As Object
Set objBook = objExcelApp.Workbooks.Open(sTapTinExcel)
'Sheet1 trong Excel
Dim objSheet As Object
Set objSheet = objBook.Worksheets(1)
'ghi vao file Excel
With objSheet
.Range("A1").FormulaR1C1 = "Alarm"
End With
objBook.Save
objBook.Saved = True
'Thoat khoi Excel
objExcelApp.Quit
End Sub
Hàm trên đc gọi từ hàm Cicode như sau:
FUNCTION
ActionWhenAlarm()
VbCallRun(VbCallOpen("WriteToExcelFile"));
END
Hàm ActionWhenAlarm() đc gọi khi có 1 alarm.
Hàm WriteToExcelFile() chỉ chạy đc đến đoạn khởi động Excel, mở file. Ko chạy đc đoạn ghi vào file, Save File, Close Excel. Ko có báo lỗi gì.
Tôi đã thử hàm trên với VB và mọi thứ đều OK.
Tôi dùng Citect 7.0
Mong các bác chỉ giáo.
Cảm ơn rất nhiều.
Sub WriteToExcelFile()
Dim sTapTinExcel As String
sTapTinExcel = "E:\PLC\Citect SCADA\Report.xls"
Dim objExcelApp As Object
Set objExcelApp = CreateObject("Excel.Application")
'Open file
Dim objBook As Object
Set objBook = objExcelApp.Workbooks.Open(sTapTinExcel)
'Sheet1 trong Excel
Dim objSheet As Object
Set objSheet = objBook.Worksheets(1)
'ghi vao file Excel
With objSheet
.Range("A1").FormulaR1C1 = "Alarm"
End With
objBook.Save
objBook.Saved = True
'Thoat khoi Excel
objExcelApp.Quit
End Sub
Hàm trên đc gọi từ hàm Cicode như sau:
FUNCTION
ActionWhenAlarm()
VbCallRun(VbCallOpen("WriteToExcelFile"));
END
Hàm ActionWhenAlarm() đc gọi khi có 1 alarm.
Hàm WriteToExcelFile() chỉ chạy đc đến đoạn khởi động Excel, mở file. Ko chạy đc đoạn ghi vào file, Save File, Close Excel. Ko có báo lỗi gì.
Tôi đã thử hàm trên với VB và mọi thứ đều OK.
Tôi dùng Citect 7.0
Mong các bác chỉ giáo.
Cảm ơn rất nhiều.
