If I'm attempting something like with Proc tabulate to display it would require either preprocessing the data for and create a single variable like Sex_Salary that was essentially valued as "Male 500 < 1000" "Male 1000+" and such.
OR to recode salary to categories such as 1, 2, 3, 4 and assign the recodes based on gender so that you could have a format like
proc format;
value SalaryCode
1='500-<1000'
2='1000 onwards'
3='500-<1500'
4='1500 onwards'
;
run;
so with 1 and 2 assigned to males and 3 and 4 assigned to females then that may work. But you would not want to use PRELOADFMT for this variable/format combination as the males would show the female range and vice versa.