Erstellungstabelle in Schleife für<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Keine Ahnung, warum das Folgen nicht funktioniert.
Sicher, ich mache etwas falsch, aber könnte mir jemand helfen zu verstehen?
Wenn ich aus der Schleife ausprobiere, klappt es eigentlich .... 
für (i = 1, i = 2, i ++,
td << select where (: Design == type_list.) &: Car_type == "BMW");
td << Teilmenge (
Ausgabetabelle ("list-" || char (type_list) )),
Ausgewählte Reihen (1),
Nur ausgewählte Spalten (0)
);
td << clear select ();
);
Re: Erstellungstabelle in Schleife fürFür den Teil "Ich verstehe nicht warum":
Das zweite Argument zum zum Schleifenanweisung ist ein Ausdruck, der vor jeder Schleifeniteration ausgewertet wird. Solange dieser Ausdruck zurückkehrt wahr (beliebiger Wert ungleich Null), die Schleifeniteration wird fortgesetzt; sobald dieser Ausdruck zurückkehrt falsch Die Schleife wird angehalten.
Der Ausdruck " i = 2 ", die Sie als zweites Argument in Ihrem ursprünglichen Code hatten, ist ein Zuordnung Anweisung, wobei der Variablen der Wert 2 zugewiesen wird ich . Diese Zuweisungsanweisung gibt immer 2 zurück, was als behandelt wird wahr was bedeutet, dass Ihre Schleife unendlich ist. Wenn Sie möchten, dass Ihre Schleife so lange wiederholt wird, wie die Variable ich hatte den Wert 2, würden Sie verwenden:
i == 2
eher, als " i = 2 ". " i == 2 "gibt wahr zurück, wenn ich ist gleich 2 und ansonsten falsch. Wenn du gebraucht hättest " i == 2 " anstatt " i = 2 "Ihre Schleife wäre jedoch überhaupt nicht gelaufen, weil Sie gerade initialisiert wurden ich auf den Wert 1 im ersten Argument (" i = 1 "), so der Ausdruck" i == 2 "wird falsch zurückkehren.
Mit " i <= 2 "Wie das zweite Argument besagt," fahren Sie mit dieser Schleife fort, solange die Variable i kleiner oder gleich 2 ist ", wodurch die Schleife zweimal, einmal mit wiederholt wird ich auf 1 setzen und einmal mit ich auf 2 setzen.
Hoffentlich hilft das,
Eric
Re: Erstellungstabelle in Schleife fürfunktioniert nach einigen Tests perfekt ... vielen Dank
Re: Erstellungstabelle in Schleife fürschöne Lösung. Jetzt versuchen. Dies könnte viele Skripte vereinfachen, die aufgrund der Tabellenerstellung sehr lang werden.
ja für die nitems ... definitiv war hier aber nur ein versuch
Re: Erstellungstabelle in Schleife fürOk, ich verstehe nicht warum, aber es funktioniert. Danke dir! Sehr hilfreich
Re: Erstellungstabelle in Schleife fürMS könnte die Antwort sein, nach der Sie tatsächlich gesucht haben, aber ich hatte eine andere Möglichkeit, Tabellen in Schleifen zu behandeln: Fügen Sie sie einer Liste hinzu.
Beispiel:
Designlist = {};
für (i = 1, i <= 2, i ++,
td << select where (: Design == type_list.) &: Car_type == "BMW");
Designliste = td << Teilmenge (
Ausgabetabelle ("list-" || char (type_list) )),
Ausgewählte Reihen (1),
Nur ausgewählte Spalten (0)
);
);
Auf diese Weise können Sie weitere Änderungen an den aufgelisteten Tabellen vornehmen, ohne sie anhand des Namens referenzieren zu müssen. Sie werden jetzt in einer praktischen Variablen gespeichert.
Sie können auch versuchen, Ihre "type_list" selbst als Maximum zu verwenden, indem Sie die "2" durch "nitems (type_list)" ersetzen.
Bearbeiten: Der Rest des Codes "Select where" wurde hinzugefügt. Ich weiß nicht, warum das überhaupt nicht kopiert wurde.
Re: Erstellungstabelle in Schleife fürZweites Argument: Versuchen Sie es mit i <= 2 anstatt i = 2 .