hi Timo
Diese Skript Liest nach aktivierung des sheets (einmal umblättern und zurück) die Variablen aus dem PRG MAIN Poti1 und Poti2 aus.
Auf dem Rechner muss TwinCat installiert sein.
Das ADS.OCX findest du dann im system32 ordner, wird aber automatisch eingebettet wenn auf deinem PC ist.
Wenn die PLC auf deinem PC läuft musst du bei dem Properties von diesem ADS OCX die Server AMS NET ID von deinem PC eintragen und bei der Client die selbe.
Wenn du von einem ander PC lesen willst dann musst du als Client NetID die vom "Excel PC" eintragen und bei der Server die vom Remote sys.
Zu Beachten ist das bei diesem "Client PC" mindestens TwinCat CP installiert (dann erst steht dieser Service zur Verfügung) sein muss und die ADS Route zum Server eingetragen ist.
Der Rest kannst du ja in VB (Excel) programieren.
Private Pwert1 As Long
Private Pwert2 As Long
Private Sub AdsOcx1_AdsReadConnectUpdateEx(ByVal dateTime As Date, ByVal nMs As Long, ByVal hConnect As Long, ByVal data As Variant, Optional ByVal hUser As Variant)
If hConnect = Pwert1 Then
Tabelle1.Cells(1, 1) = CDbl(data)
ElseIf hConnect = Pwert2 Then
Tabelle1.Cells(1, 2) = CDbl(data)
End If
End Sub
Private Sub Worksheet_Activate()
Call AdsOcx1.AdsReadVarConnectEx("MAIN.Poti1", ADSTRANS_SERVERONCHA, 100, Pwert1)
Call AdsOcx1.AdsReadVarConnectEx("MAIN.Poti2", ADSTRANS_SERVERONCHA, 100, Pwert2)
End Sub
Private Sub Worksheet_Deactivate()
Call AdsOcx1.AdsDisconnectEx(Pwert1)
Call AdsOcx1.AdsDisconnectEx(Pwert2)
End Sub
lg