Ich brauche ein Skript, das alle Spalten durchsucht und Zellen mit dem Wert "< LOD" einfärbt. Mein Skript liefert nicht das gewünschte Ergebnis. Irgendwelche Ratschläge?
dt = Current Data Table();
// Get all of the column names in the data table
ColNames = dt << get column names( string );
NRows = N Rows( dt );
// Loop through each column and row to find "< LOD" and color the previous cell
For( i = 1, i <= N Items( ColNames ), i++,
column = Column( dt, ColNames[i] );
For( j = 2, j <= NRows, j++, // Start at row 2 to avoid coloring out-of-bound cells
If( Row(j) == "< LOD",
column << Color Cells( j - 1, "Red" );
)
);
);
Andere und elegantere Lösungen sind mehr als willkommen!
Dies sucht nach dem Wert „F“, gibt aber höchstwahrscheinlich einige Ideen, was Sie ändern könnten (alle Zeilen für jede Spalte im Voraus abrufen, Zellen in Argumentreihenfolge einfärben, …)
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
colnames = dt << get column names(character, string);
For Each({colname}, colnames,
r = Loc(dt[0, colname], "F");
If(N Items(r) > 0,
Column(dt, colname) << Color Cells("Red", r);
);
);
Write();
Bearbeiten: Unnötiges Show(r); aus der Schleife entfernt