Arkadaşlar kolay gelsin,
Bir plc ile scada da script yazdım. Raporlama amaçlı yazmış olduğum bu script çalışıyor. Fakat eğer biri adı geçen excel sayfasını açık unuttu ise program "üzerine yazılsın mı " uyarısı veriyor. evet yada hayır desek bile kayıt yapmıyor. excel sayfası arka planda açık kaldığı için bu andan itbaret rapor alamıyorum.
excel sayfası açık olsa bile boş olan satıra istenilen bilgileri yazacak , iş bitince kaydedip kapatacak şekilde bu programı nasıl düzeltebiliriz.
Sub OnLButtonDown(ByVal Item, ByVal Flags, ByVal x, ByVal y)
Dim TORBASAYISI1
Set TORBASAYISI1 = HMIRuntime.Tags("TORBASAYISI1")
Dim URUNCINSI1
Set URUNCINSI1 = HMIRuntime.Tags("URUNCINSI1")
Dim ZAYITORBASAYISI1
Set ZAYITORBASAYISI1 = HMIRuntime.Tags("ZAYITORBASAYISI1")
Dim YUKLEYICI1
Set YUKLEYICI1 = HMIRuntime.Tags("YUKLEYICI1")
Dim KAMYONPLAKA1
Set KAMYONPLAKA1 = HMIRuntime.Tags("KAMYONPLAKA1")
Dim OPERATOR1
Set OPERATOR1 = HMIRuntime.Tags("OPERATOR1")
Dim ExcelNesne
Set ExcelNesne = CreateObject ("Excel.Application")
Dim KENAR1
Set KENAR1 = HMIRuntime.Tags("KENAR1")
Dim ACIKLAMA_1
Set ACIKLAMA_1 = HMIRuntime.Tags("ACIKLAMA_1")
ExcelNesne.Workbooks.Open "c:\rapor2.xls",,,, "9906007","9906007"
X = 2
Do Until ExcelNesne.CELLS(X,1)=false
X = X + 1
Loop
ExcelNesne.Cells(X,1).value = Date
ExcelNesne.Cells(X,2).value = Time
ExcelNesne.Cells(X,3).value = "KANTAR2"
ExcelNesne.Cells(X,4).value = URUNCINSI1.Read
ExcelNesne.Cells(X,5).value = KAMYONPLAKA1.Read
ExcelNesne.Cells(X,6).value = OPERATOR1.Read
ExcelNesne.Cells(X,7).value = YUKLEYICI1.Read
ExcelNesne.Cells(X,8).value = TORBASAYISI1.Read
ExcelNesne.Cells(X,9).value = ZAYITORBASAYISI1.Read
ExcelNesne.Cells(X,10).value = KENAR1.Read
ExcelNesne.Cells(X,11).value = ACIKLAMA_1.Read
ExcelNesne.ActiveWorkbook.Save
excelnesne.Workbooks.close
excelnesne.Quit
End Sub
Bir plc ile scada da script yazdım. Raporlama amaçlı yazmış olduğum bu script çalışıyor. Fakat eğer biri adı geçen excel sayfasını açık unuttu ise program "üzerine yazılsın mı " uyarısı veriyor. evet yada hayır desek bile kayıt yapmıyor. excel sayfası arka planda açık kaldığı için bu andan itbaret rapor alamıyorum.
excel sayfası açık olsa bile boş olan satıra istenilen bilgileri yazacak , iş bitince kaydedip kapatacak şekilde bu programı nasıl düzeltebiliriz.
Sub OnLButtonDown(ByVal Item, ByVal Flags, ByVal x, ByVal y)
Dim TORBASAYISI1
Set TORBASAYISI1 = HMIRuntime.Tags("TORBASAYISI1")
Dim URUNCINSI1
Set URUNCINSI1 = HMIRuntime.Tags("URUNCINSI1")
Dim ZAYITORBASAYISI1
Set ZAYITORBASAYISI1 = HMIRuntime.Tags("ZAYITORBASAYISI1")
Dim YUKLEYICI1
Set YUKLEYICI1 = HMIRuntime.Tags("YUKLEYICI1")
Dim KAMYONPLAKA1
Set KAMYONPLAKA1 = HMIRuntime.Tags("KAMYONPLAKA1")
Dim OPERATOR1
Set OPERATOR1 = HMIRuntime.Tags("OPERATOR1")
Dim ExcelNesne
Set ExcelNesne = CreateObject ("Excel.Application")
Dim KENAR1
Set KENAR1 = HMIRuntime.Tags("KENAR1")
Dim ACIKLAMA_1
Set ACIKLAMA_1 = HMIRuntime.Tags("ACIKLAMA_1")
ExcelNesne.Workbooks.Open "c:\rapor2.xls",,,, "9906007","9906007"
X = 2
Do Until ExcelNesne.CELLS(X,1)=false
X = X + 1
Loop
ExcelNesne.Cells(X,1).value = Date
ExcelNesne.Cells(X,2).value = Time
ExcelNesne.Cells(X,3).value = "KANTAR2"
ExcelNesne.Cells(X,4).value = URUNCINSI1.Read
ExcelNesne.Cells(X,5).value = KAMYONPLAKA1.Read
ExcelNesne.Cells(X,6).value = OPERATOR1.Read
ExcelNesne.Cells(X,7).value = YUKLEYICI1.Read
ExcelNesne.Cells(X,8).value = TORBASAYISI1.Read
ExcelNesne.Cells(X,9).value = ZAYITORBASAYISI1.Read
ExcelNesne.Cells(X,10).value = KENAR1.Read
ExcelNesne.Cells(X,11).value = ACIKLAMA_1.Read
ExcelNesne.ActiveWorkbook.Save
excelnesne.Workbooks.close
excelnesne.Quit
End Sub
