Not the simplest way of doing this, but might work for you. Note that you might have to add extra checks if you have one-sided specification limits
Names Default To Here(1);
dt = Open("$DOWNLOADS/Transpose of u4_trimmed.jmp");
cols = dt << Get Column Names("String");
labelidx = Contains(cols, "Label");
partcols = Remove From(cols, labelidx + 1, Contains(cols, "LSL") - labelidx - 1);
m = J(N Rows(dt), N Items(partcols), 0);
For Each Row(dt,
	m[Row(), 0] = dt[Row(), partcols] < :LSL | dt[Row(), partcols] > :USL
);
For Each({partcol, idx}, partcols,
	color_rows = Loc(m[0, idx]);
	If(N Items(color_rows) > 0,
		Column(dt, partcol) << Color Cells("Red", color_rows);
	);
);
					
				
			
			
				
	-Jarmo