TIA VB Skript - String-Variablen mit einer For-Schleife erstellen

Zuli

Level-2
Beiträge
25
Reaktionspunkte
2
Zuviel Werbung?
-> Hier kostenlos registrieren
Dim i Dim direction Set direction = SmartTags("direction_transfer") For i = 0 To 7 Dim SiemensMaster & i Dim SiemensSlave & i Dim ABMaster & i Dim ABSlave & i Set ABMaster(i) = SmartTags("Master" & i) Set ABSlave(i) = SmartTags("Slave" & i) If direction = 1 Then 'Active->AB Set SiemensMaster(i) = SmartTags("Active.Master[" & i & "]") Set SiemensSlave(i) = SmartTags("Active.Slave[" & i & "]") SiemensMaster(i).Value = ABMaster(i).Value SiemensSlave(i).Value = ABSlave(i).Value Else 'Current->AB Set SiemensMaster(i) = SmartTags("Current.Master[" & i & "]") Set SiemensSlave(i) = SmartTags("Current.Slave[" & i & "]") ABMaster(i).Value = SiemensMaster(i).Value ABSlave(i).Value = SiemensSlave(i).Value End If Next

Hallo zusammen, ich möchte mit diesem Skript Tags, wie zum Beispiel ABMaster0 bis ABMaster7, mithilfe einer For-Schleife definieren. Diese Tags sollen entweder von der Active-Datenbank oder der Current-Datenbank zugewiesen werden. Es handelt sich hierbei um Siemens-Datenbank- und HMI-Tags, die in eine Allen-Bradley-Steuerung geschrieben werden.

Ich bekomme einen Syntaxfehler und es wird anstelle von "Dim SiemensMaster & i" ein konstanter Integer erwartet. Möglicherweise liegt es daran, dass ich Strings möchte, aber die Definition "Dim Master(8)" eines Arrays verwende. Gibt es eine Möglichkeit, Stringnamen mit einer For-Schleife zu erstellen?

Danke vorab.
 
Nein ... diese Möglixhkeit gibt es nicht.
Aber warum möchtest du das ? Wenn du das Array außerhalb der Schleife dimensionierst dann ist doch alles OK - also Dim Siemensmaster(7)
 
Zurück
Oben