تالار گفتگوی سایت مهندس ماهر

Notifications
Clear all

ارتباط نرم افزار Wincc با نرم افزار Excel  

  RSS

Mrkaveh
(@mrkaveh)
New Member
عضو شده: 6 سال قبل
ارسال‌ها: 4
۲۰/۰۸/۱۴۰۲ ۹:۵۲ ب.ظ  

به نام خدا

اسکریپت VBS جهت برقراری ارتباط بین نرم افزار Wincc و نرم افزار Excel جهت ثبت و یا قرائت مقادیر مورد نظر.

'-------------------------------------------\
'Name: Wincc Read Excel File write To Tag \
'Wincc Version: Wincc V7.5 SP2 \
'Author: Eng Mohammad Reza Kaveh Yazdy \
'Date: 11-Aban-1402 \
'Trigger : Button Event \
'Telegram ID:@WinccVBS \
'-------------------------------------------\

'--------------------- Variable -----------------------------------
Dim objExcel,objWorkbook,objWorksheet,path,FileName,Dummy,Check
Dim R01,R02,R03,R04,R05
'--------------------- Excel Object -------------------------------
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = False
'---------------------------------------------------
Set FileName=HMIRuntime.Tags("FileName2")
path=HMIRuntime.ActiveProject.Path
Set R01=HMIRuntime.Tags("R01")
Set R02=HMIRuntime.Tags("R02")
Set R03=HMIRuntime.Tags("R03")
Set R04=HMIRuntime.Tags("R04")
Set R05=HMIRuntime.Tags("R05")
Dummy=FileName.Read
R01.Read
R02.Read
R03.Read
R04.Read
R05.Read
'---------------------------------------------------------
If(Dummy="") Then
Set Check=ScreenItems("FileName2")
Check.BackColor=RGB(255,0,0)
Else
'-------------------------------------------------------
Set objWorkbook = objExcel.Workbooks.Open(path&"\Excel\"& Dummy&".xlsx")
R01.Value =objExcel.Cells(2, 1).Value
R02.Value = objExcel.Cells(2, 2).Value
R03.Value = objExcel.Cells(2, 3).Value
R04.Value = objExcel.Cells(2, 4).Value
R05.Value = objExcel.Cells(2, 5).Value
R01.Write
R02.Write
R03.Write
R04.Write
R05.Write
objExcel.Quit
'----------------------------------------------------------
HMIRuntime.Trace "Done"
FileName.Value=""
FileName.Write
Set Check=ScreenItems("FileName2")
Check.BackColor=RGB(200,191,231)
End If

 

 

'-------------------------------------------\
'Name: Wincc User Write Tag Value To Excel \
'Wincc Version: Wincc V7.5 SP2 \
'Author: Eng Mohammad Reza Kaveh Yazdy \
'Date: 11-Aban-1402 \
'Trigger= Button Event \
'Telegram ID:@WinccVBS \
'-------------------------------------------\

'--------------------- Variable -----------------------------------
Dim objExcel,objWorkbook,objWorksheet,path,FileName,Dummy,Directory,Check
Dim W01,W02,W03,W04,W05
'--------------------- Excel Object --------------------------------
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = False
'--------------------- Excel Sheet ---------------------------------
Set objWorkbook = objExcel.Workbooks.Add()
Set objWorksheet = objWorkbook.Worksheets(1)
objWorksheet.name="Material"
'---------------------------------------
path=HMIRuntime.ActiveProject.Path
Set FileName=HMIRuntime.Tags("FileName") '8 Bit Text
Set Directory=HMIRuntime.Tags("Directory")'8 Bit Text
Set W01=HMIRuntime.Tags("W01") '32Bit value
Set W02=HMIRuntime.Tags("W02")
Set W03=HMIRuntime.Tags("W03")
Set W04=HMIRuntime.Tags("W04")
Set W05=HMIRuntime.Tags("W05")
Dummy=FileName.Read
w01.Read
w02.Read
w03.Read
w04.Read
w05.Read
Directory.Read
'----------------------------------------
If(Dummy="") Then
Set Check=ScreenItems("FileName")
Check.BackColor=RGB(255,0,0)
Else
objWorksheet.Cells(1,1) = "Water"
objWorksheet.Cells(1,2) = "Oil"
objWorksheet.Cells(1,3) = "Suger"
objWorksheet.Cells(1,4) = "Egg"
objWorksheet.Cells(1,5) = "Butter"
objExcel.Cells(2, 1).Value = w01.Value
objExcel.Cells(2, 2).Value = w02.Value
objExcel.Cells(2, 3).Value = w03.Value
objExcel.Cells(2, 4).Value = w04.Value
objExcel.Cells(2, 5).Value = w05.Value
objExcel.Cells.EntireColumn.AutoFit
objWorkbook.Saveas(path&"\Excel\"& Dummy&".xlsx")
Directory.Value =path&"\Excel\"& Dummy&".xlsx"
Directory.Write
'--------------------------------------------------
objExcel.Quit
HMIRuntime.Trace "Done" & vbCrlf
FileName.Value=""
FileName.Write
Set Check=ScreenItems("FileName")
Check.BackColor=RGB(200,191,231)
End If

انشاالله مفید واقع شود.

https://aparat.com/v/vQZyk


نقل‌قول
Share: