Werte für eine Zelle festlegen<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Hallo alle,
Es ist schon einige Zeit her, dass ich in JSL programmiert habe, deshalb werde ich einige grundlegende Fragen stellen, die ich in den Handbüchern nicht gefunden habe.
1. Wie kann ich mithilfe einer JSL einen bestimmten Wert für eine bestimmte Spalte/Zeile festlegen?
2. Ich muss das in einer For-Schleife tun. Nehmen wir an, ich muss eine Schleife von 1 bis zur Anzahl der Zeilen ausführen und (vorerst) jeder Zeile einer bestimmten Spalte dieselbe Nummer zuweisen. Wie mache ich das so?
3. Konkretes Beispiel. Ich habe M Sätze mit N Messungen. Ich habe Datum und Uhrzeit für jede Messung. Ich weiß, dass jeder M Die Messung wurde ordnungsgemäß durchgeführt. Aber ich habe keine Spalte, die angibt, um welches Set es sich handelt, ich habe nur eine Spalte, die die Messung enthält.
Mit anderen Worten: Ich habe nur die erste Spalte und muss die zweite erstellen.
Ich weiß, wie man die Logik umsetzt: Sehen Sie sich den Unterschied zwischen der aktuellen und der vorherigen Zeile an und wiederholen Sie den MeasSet-Zähler, sobald er nicht 1 ist.
Aber wie iteriere ich und wie schreibe ich diese FOR-Schleife?
Ich habe es einmal geschrieben, aber den Code verloren und hier von vorne angefangen.
| Zähler1 | MessSet |
|---|
1 | 1 |
| 2 | 1 |
| 3 | 1 |
| 4 | 1 |
| 5 | 1 |
| 1 | 2 |
| 2 | 2 |
| 3 | 2 |
| 4 | 2 |
| 5 | 2 |
Betreff: Werte für eine Zelle festlegenDanke,
Ich bin auf diese Lösung gekommen:
ich = 1 ;
Für jede Reihe (
Wenn (( : Zähler1 - Verzögerung ( : Zähler1 )) != 1 , ( ich ++; : MessSet = ich ) , ( ich = ich ; : MessSet = ich ) , ( : MessSet = ich ) ) ;
) ;
Ich muss zwei Dinge betonen:
1. Muss != sein, nicht ==
2. Musste i=i setzen, sonst fragt das Skript, ob ich den Vergleich „==“ verwenden oder den Wert „=“ für das nächste MeasSet zuweisen möchte.
Betreff: Werte für eine Zelle festlegenHier sind einige Beispiele, die Ihnen eine Idee geben könnten:
dt = Aktuelle Datentabelle () ;
// 1. Mit einer Spaltenvariablen
Kol = Spalte ( dt , „MeasSet“ ) ;
Kol [ 6 ] = 2 ;
// oder direkt
// „dt“ in Column() ist optional, aber gut, wenn derselbe Spaltenname in anderen offenen Tabellen vorkommt
Spalte ( dt , „MeasSet“ )[ 1 ] = 1 ;
// 2.
Für jede Reihe ( Kol [] = 1 ) ;
// 3.
Für ( ich = 1 , ich <= N Zeilen ( dt ) , ich ++,
Wenn ( : Zähler1 [ ich ] == 1 ,
Kol [ ich ] = Satz = 1 ,
Kol [ ich ] = Satz
) ;
Satz ++;
) ;