Val,
The Make Binning Formula creates a new column, that sets it's Value Labels. If you select to "Use Range Labels" the new column's value labels will look something like:
{18 <= "18 — 26" < 26, 26 <= "26 — 34" < 34, 34 <= "34 — 42" < 42, 42 <=
"42 — 50" < 50, 50 <= "50 — 58" < 58, 58 <= "58 — 66" < 66, 66 <= "66 — 74" < 74,
74 <= "74 — 82" < 82, 82 <= "82 — 90" < 90, 90 <= "90 — 98" < 98, 98 <=
"98 — 106" < 106, 106 <= "106 — 114" < 114, 114 <= "114 — 122" < 122, 122 <=
"122 — 130" < 130, 130 <= "130 — 138" < 138, 138 <= "138 — 146" < 146, 146 <=
"146 — 154" < 154, 154 <= "154 — 162" < 162, 162 <= "162 — 170" < 170, 170 <=
"170 — 178" < 178, 178 <= "178 — 186" < 186, 186 <= "186 — 194" < 194, 194 <=
"194 — 202" < 202}
The list can then be parsed and the lower and upper boundaries can be extracted.
Here is a script that I used against my own data table that the Make Binning Formula had created a column called NPN1 Binning
Names Default To Here( 1 );
dt = Current Data Table();
// Get the Value Labels, and parse them into a list
TheLabels = Char( dt:npn1 binned << get property( "Value Labels" ) );
thelabels = Substr( thelabels, 14, Length( thelabels ) - 14 );
thelabels = Parse( thelabels );
// Create a new table to hold the values
dtbnd = New Table( "Boundries", New Column( "Lower Boundry" ), New Column( "Upper Boundry" ) );
dtbnd << add rows( N Items( TheLabels ) );
// Pass through the list and strip off the upper and lower boundaries
For( i = 1, i <= N Rows( dtbnd ), i++,
dtbnd:Lower Boundry[i] = Num( Word( 1, Char( TheLabels[i] ), "<" ) );
dtbnd:Upper Boundry[i] = Num( Word( 3, Char( TheLabels[i] ), "<" ) );
);
Jim