Search code examples
excelsasexportproc

How to use PROC EXPORT to export to multiple tabs in Excel


I have a handful of SAS datasets in my project file, which I would like to combine into one spreadsheet - each dataset on a different tab. I found a solution here: https://communities.sas.com/thread/58447 but it is not working for me. The code I am using is:

proc export data=work.dod_ltd file='H:\Projects\DOD_Report\Sample.xlsx' dbms=xlsx; sheet='LTD Detail';
proc export data=work.dod_std file='H:\Projects\DOD_Report\Sample.xlsx' dbms=xlsx; sheet='STD Detail';
proc export data=work.dod_life_waiver file='H:\Projects\DOD_Report\Sample.xlsx' dbms=xlsx; sheet='Waiver Detail';
run;

However, instead of adding new tabs, each proc export is overwriting the existing 'Sample.xlsx' file, so I end up with only the 'Waiver Detail' tab.

How do I make it add the tabs to an existing spreadsheet?

Thanks!

Mike


Solution

  • XLSX only supports multiple sheets per workbook in the later versions, SAS 9.4+. For earlier versions the answer may vary but try changing your DBMS. The DBMS options depend on your version of SAS, your version of Excel as well as the bitness (32/64bit) of each application.

     DBMS=EXCELCS