Autor
|
Thema: Variablen in for-Schleife über Laufindex erstellen (602 mal gelesen)
|
Tanki Mitglied Entwicklungsingenieur
Beiträge: 14 Registriert: 11.05.2018 CATIA V5 R29 SP3 Windows 10
|
erstellt am: 16. Mai. 2018 16:51 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, ich würde gern innerhalb einer Schleife Variablen zunächst definieren und anschließend mit Werten füllen. Folgendes Bsp. soll meinen Grundgedanken beschreiben (wenn auch nicht korrekt): Code:
Sub CatMain() Dim i As Integer For i=1 to 6 Step 1 Dim variable(i) As 'beliebiger Typ' variable(i) = 'beliebiger Wert' Next End Sub
Mein Gedanke wäre, dass ich abhängig vom Laufindex einen string erstelle, der eine kombination aus Name+Laufindex darstellt. Und diesen dann verwende um ein Objekt zu erstellen, dessen Name der Inhalt des Strings ist. Wenn dieser Ansatz nicht ganz falsch ist, würde ich mich über einen kleinen Denkanstoß zur Umsetzung freuen. Viele Grüße [Diese Nachricht wurde von Tanki am 24. Mai. 2018 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bgrittmann Moderator Konstrukteur
Beiträge: 11780 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 16. Mai. 2018 16:56 <-- editieren / zitieren --> Unities abgeben: Nur für Tanki
Servus Wie meinst du das? zB so: Code:
Dim sName As String For i=1 to 6 Step 1 sName = "meineNameOhnePraefix_" & CStr(i) 'sName dann irgendwo innerhalb der Schleife verwenden Next
Gruß Bernd PS: Hast du meine PM gelesen? ------------------ Warum einfach, wenn es auch kompliziert geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Tanki Mitglied Entwicklungsingenieur
Beiträge: 14 Registriert: 11.05.2018 CATIA V5 R29 SP3 Windows 10
|
erstellt am: 16. Mai. 2018 20:37 <-- editieren / zitieren --> Unities abgeben:
Ok ein konkreters Beispiel wie ich es mir vorstelle: Angenommen ich möchte mir in einer Schleife die Variablen erstellen, die notwendig sind um den Ort eines GeoSets zu beschreiben. Also: partDocument, part hybridBodies, hybridBody, hybridShapes und das ganze 6 mal. Immer nach dem Muster partDocumenti, hybridBodiesi,... hybridBodyi+1 usw. Wie definiere ich den Namen dieser Variablen? Dim partDocument(i) As partDocument geht nicht, da es dann die Fehlermeldung gibt, man dürfe in diesem Kontext nur 'constant' Variablen deklarieren. VG Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| 3D-Konstrukteur (m/w/d) | Jeden Tag meistern Sie neue Herausforderungen und lieben es, selbstständig zu arbeiten. Sie möchten echten Erfolg mitgestalten. Haben Sie auch einen Arbeitgeber, der das zu schätzen weiß? Rund 1300 Mitarbeitende bei LAMILUX schon! Deswegen sind wir eines der wachstumsstärksten Familienunternehmen Oberfrankens und weltweit führend in unseren Märkten: Wir produzieren faserverstärkte Kunststoffe für den weltweiten Bau von Nutzfahrzeugen, Caravans oder auch Bussen.... | Anzeige ansehen | Konstruktion, Visualisierung |
|
bgrittmann Moderator Konstrukteur
Beiträge: 11780 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 16. Mai. 2018 20:43 <-- editieren / zitieren --> Unities abgeben: Nur für Tanki
Servus Warum willst du jedes mal neue Objekte deklarieren? Du kannst dich einfach die Objekte neu zuweisen: Code: for i = 1 to oSelection.Count2 Set MySelectedObject= oSelection.item2(i).Value 'dann was damit machen next
Gruß Bernd PS: Du solltest auch sprechende Variablennamen verwenden und nicht hybridBody1, hybridBody2, ... sonst verstehst du deinen eigenen Code in ein paar Tagen nicht mehr ------------------ Warum einfach, wenn es auch kompliziert geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |