data test; input first $ second $; datalines; a x a y a y a z a z a z b x b x b y b y b y b z b z b z b z ; run; * ods trace on; proc freq data=test; tables first*second / nopercent nocol norow; ods output crosstabfreqs = step1; run; * ods trace off; proc contents data=step1; run; data step2; set step1 (keep = first second frequency _type_); if (_type_ EQ "11"); /* subsetting if */ drop _type_; run; proc print data = step2; run; proc transpose data=step2 out=step3; by first; id second; var frequency; run; proc print data=step3; run; data step4; set step3 (drop = _name_ _label_); run; proc print data=step4; run; PROC EXPORT DATA= WORK.STEP4 OUTFILE= "C:\exported.xls" DBMS=EXCEL2000 REPLACE; RUN;